五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網 會員登陸 & 注冊

Spring系列(六):@Conditional注解用法介紹

2022-04-05 16:28 作者:IT技術分享社區(qū)  | 我要投稿

今天給大家介紹@Conditional懶加載注解用法,希望對大家能有所幫助!? ? ? ?

? ? ? ?

1、@Conditional注解介紹

@Conditional是Spring4版本新提供的一種注解,它的作用是按照設定的條件進行判斷,把滿足判斷條件的bean注冊到Spring容器。


2、@Conditional的源碼內容如下:

說明:

  • @Conditional可以作用在方法上,也可以作用在類上。

  • 使用的時候需要傳入實現Condition接口類數組。

  • 如果是類和方法都加了@Conditional注解,最終在方法上的注解為最終的條件,如果返回true則加入容器,反之不會加入容器。

  • 如果只是類上加了@Conditional注解,整個類的所有方法都會加入容器中。


3、用法示例

3.1 新建Book.java 文件


3.2 CNCondition.java 文件


3.3 ZHCondition.java 文件



3.4 新建TestConditionalConfig.java 配置文件



3.5 新建TestConditional.java 測試文件



4、@Conditional應用場景

在一些需要條件滿足才是實例化的類中,使用此注解,

比如項目中需要根據不同的場景使用不同的消息中間件,在消息隊列的實例化bean上,使用@Conditional注解,根據配置文件的不同,來判斷哪個bean需要加載到Spring容器中。

5、@Conditional的擴展注解


@ConditionalOnBean:僅在當前上下文中存在某個對象時,才會實例化一個Bean。 @ConditionalOnClass:某個class位于類路徑上,才會實例化一個Bean。 @ConditionalOnExpression:當表達式值為true的時候,才會實例化一個Bean。 @ConditionalOnMissingBean:僅僅在當前上下文中不存在某個對象時,才會實例化一個Bean。 @ConditionalOnMissingClass:某個class類路徑上不存在的時候,才會實例化一個Bean。 @ConditionalOnNotWebApplication:非web應用,才會實例化一個Bean。 @ConditionalOnBean:當容器中有指定Bean的條件下進行實例化。 @ConditionalOnMissingBean:當容器里沒有指定Bean的條件下進行實例化。 @ConditionalOnClass:當classpath類路徑下有指定類的條件下進行實例化。 @ConditionalOnMissingClass:當類路徑下沒有指定類的條件下進行實例化。 @ConditionalOnWebApplication:當項目是一個Web項目時進行實例化。 @ConditionalOnNotWebApplication:當項目不是一個Web項目時進行實例化。 @ConditionalOnProperty:當指定的屬性有指定的值時進行實例化。 @ConditionalOnExpression:基于SpEL表達式的條件判斷。 @ConditionalOnJava:當JVM版本為指定的版本范圍時觸發(fā)實例化。 @ConditionalOnResource:當類路徑下有指定的資源時觸發(fā)實例化。 @ConditionalOnJndi:在JNDI存在的條件下觸發(fā)實例化。 @ConditionalOnSingleCandidate:當指定的Bean在容器中只有一個,或者有多個但是指定了首選的Bean時,才會觸發(fā)實例化。





Spring系列(六):@Conditional注解用法介紹的評論 (共 條)

分享到微博請遵守國家法律
海伦市| 清镇市| 西宁市| 东至县| 红原县| 大渡口区| 西贡区| 隆化县| 勐海县| 泸州市| 来安县| 牙克石市| 鹰潭市| 光山县| 宁陕县| 夏邑县| 珲春市| 汶川县| 呼图壁县| 二连浩特市| 视频| 湖南省| 五原县| 浪卡子县| 鹤山市| 高碑店市| 塔城市| 马鞍山市| 乌兰浩特市| 定边县| 苏州市| 喀喇| 来安县| 平潭县| 鲜城| 辽阳县| 开封县| 安顺市| 银川市| 平舆县| 施秉县|