項目中通常用到if判斷,但有時候為了擴展的需要,不想過多的寫if,else語句,這時候首先想到的就是使用策略模式。
策略模式(Strategy Pattern):定義一系列算法,將每一個算法封裝起來,并讓它們可以相互替換。策略模式讓算法獨立于使用它的客戶而變化,也稱為政策模式(Policy)。
Context: 環(huán)境類
Strategy: 抽象策略類
ConcreteStrategy: 具體策略類

類圖
時序圖:

時序圖
通過圖可以看到有一個接口,不同的情況下使用不同的實現(xiàn)類的計算邏輯。
項目中通常根據(jù)不同的事件,類型,走不同的業(yè)務邏輯。
那么在spring boot中怎么使用呢。舉個簡單的例子:
1.定義接口

接口定義
2.編寫實現(xiàn)類,子類的代碼基本都是根據(jù)自己的業(yè)務做好實現(xiàn)就行,大致的代碼如下:

子類
3.編寫Myconfig.java,做好類型和子類的對應關系

類型和子類對應關系
4.使用的時候在類中引入,然后根據(jù)類型開始調(diào)用

類中注入
5.根據(jù)類型查找對應的實現(xiàn)類,減少if語句,同時也方便擴展新的類型,減少了代碼耦合

根據(jù)類型查找對應的實現(xiàn)類,減少if語句
---------------------------
如果對您有幫助,記得雙擊么么噠!
--------------------------