SpringBoot中使用策略模式

2021-10-08 17:07:13 字數 1274 閱讀 1978

策略模式:定義一組演算法,將每個演算法都封裝起來,相互之間可以互換。

策略模式需要乙個抽象演算法介面,一組演算法,乙個容器類(context)

假設我們有乙個場景:根據傳值type的不同,呼叫不同的介面(加減乘除)

抽象演算法介面:

public inte***ce izstrategy
演算法1:

@slf4j

@component

public class zaddstrategy implements izstrategy

}

演算法2:

@slf4j

@component

public class zsubstractstrategy implements izstrategy

}

列舉型別:(方便呼叫)

public enum zstrategyenum 

}zstrategyenum(string type, string bean)

public string gettype()

public void settype(final string type)

public string getbean()

public void setbean(final string bean)

/*** 根據傳的type返回bean

* @param type

* @return

*/public static string getbeanbytype(final string type)

}

容器類(context):

@slf4j

@service

public class zstrategycontext

@sneakythrows

public izstrategy getstrategy(final string type)else

}}

到此我們的策略模式就寫完了。來看看具體實現

業務介面

public inte***ce imodelservice
介面實現

@service

public class modelserviceimpl implements imodelservice

}

Spring Boot中使用MongoDB資料庫

前段時間分享了關於spring boot中使用redis的文章,除了redis之後,我們在網際網路產品中還經常會用到另外一款著名的nosql資料庫mongodb。下面就來簡單介紹一下mongodb,並且通過乙個例子來介紹spring boot中對mongodb訪問的配置和使用。mongodb是乙個基...

Spring Boot中使用MongoDB資料庫

前段時間分享了關於spring boot中使用redis的文章,除了redis之後,我們在網際網路產品中還經常會用到另外一款著名的nosql資料庫mongodb。下面就來簡單介紹一下mongodb,並且通過乙個例子來介紹spring boot中對mongodb訪問的配置和使用。mongodb是乙個基...

SpringBoot中使用日誌

結果 所有配置檔案都會被載入,高優先順序的配置檔案會覆蓋低優先順序的配置檔案 springboot 底層是spring框架,spring框架預設是用jcl springboot選用slf4j和logback作為日誌框架 如何使用slf4j import org.slf4j.logger import...