国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Springboot實現根據條件切換注入不同實現類的示例代碼

瀏覽:13日期:2023-05-01 09:17:22

最近有個一需求需要根據外界環境的屬性(操作系統 || yml屬性 || 其他bean的狀態) 來實現啟動時注入兩套不同的實現類, 實現切換.

實現啟動時條件注入分2步:

第一步 使用@Conditional(參數為 True false條件實現類 需要你自己實現)注解

@Conditional(RabbitMqCondition.class)public class RabbitmqSMSMsgServiceImpl extends RabbitmqBasicMsgService {// @Autowired(required = false)// DefaultMQProducer producer; @Override public void sendToYourTaskQueue_Step2(PnsMessage pnsMessage) { // TODO rabbitmq 實現SMS消息推送 }}

第二步 實現自定義的條件類接口Condition 實現matches方法:

我這里判斷的是spring配置文件里的屬性, 其實可以判斷非常廣泛的東西, 并不只限于屬性.

public class RabbitMqCondition implements Condition { @Override public boolean matches(ConditionContext conditionContext, AnnotatedTypeMetadata annotatedTypeMetadata) { return 'rabbitmq'.equals(conditionContext.getEnvironment().getProperty('mq.type')); }}

application.yml 可以切換屬性

mq: type: rabbitmq

如果要是有多個符合條件的bean 利用@Service(value=“區別開來”)

到此這篇關于Springboot實現根據條件切換注入不同實現類的示例代碼的文章就介紹到這了,更多相關Springboot 根據條件切換注入不同實現類內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
主站蜘蛛池模板: 99精品免费观看 | 99综合在线 | 在线观看香蕉免费啪在线观看 | aaa级大片 | 美女张开腿让男人捅的视频 | 久久国产欧美日韩精品 | 91大神大战丝袜美女在线观看 | 日韩欧美亚洲天堂 | 性8sex亚洲区入口 | 国产亚洲精品成人婷婷久久小说 | 国产理论视频在线观看 | 在线毛片一区二区不卡视频 | 日韩不卡在线观看 | 国产一级一片 | 国产又粗又黄又湿又大 | 久久大胆视频 | 国产成人欧美视频在线 | 在线观看免费黄视频 | 久草在线视频免费 | 日本国产在线 | 另类自拍 | 国产三级做爰在线观看∵ | 成人三级在线播放线观看 | aaa成人永久在线观看视频 | 欧美大尺码毛片 | 福利社在线 | 97国产大学生情侣11在线视频 | 黄网站色成年小说系列 | 日韩一区二区在线观看 | 国产欧美日韩综合精品一区二区三区 | 亚洲国产精品日韩高清秒播 | 精品久久久久久久久免费影院 | 亚洲精品一区二区三区www | 91久久亚洲精品一区二区 | 国产成人啪一区二区 | 欧美视频网站在线观看 | 国产精品久久久久久久久久久久久久 | 国产美女拍拍拍在线观看 | 国产黄色小视频 | 国产一级毛片国产 | 免费一级欧美片片线观看 |