最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring中的@ConditionalOnProperty注解使用詳解

 更新時(shí)間:2024年01月17日 08:43:32   作者:qq_53639759  
這篇文章主要介紹了Spring中的@ConditionalOnProperty注解使用詳解,在 spring boot 中有時(shí)候需要控制配置類是否生效,可以使用 @ConditionalOnProperty 注解來(lái)控制 @Configuration 是否生效,需要的朋友可以參考下

@ConditionalOnProperty

在 spring boot 中有時(shí)候需要控制配置類是否生效,可以使用 @ConditionalOnProperty 注解來(lái)控制 @Configuration 是否生效.

示例:

配置類代碼

@AutoConfiguration
@ConditionalOnProperty(prefix = "yudao.tenant", value = "enable", havingValue = true) // 允許使用 yudao.tenant.enable=false 禁用多租戶
@EnableConfigurationProperties(TenantProperties.class)
public class YudaoTenantAutoConfiguration {
	xxxxxxxxxxxxxxxx
}

配置文件代碼

yudao:
  tenant: # 多租戶相關(guān)配置項(xiàng)
    enable: true

所以當(dāng)enable=true是,該配置類才會(huì)生效

@ConditionalOnProperty源碼

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package org.springframework.boot.autoconfigure.condition;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.context.annotation.Conditional;
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE, ElementType.METHOD})
@Documented
@Conditional({OnPropertyCondition.class})
public @interface ConditionalOnProperty {
    String[] value() default {};
    String prefix() default "";
    String[] name() default {};
    String havingValue() default "";
    boolean matchIfMissing() default false;
}

havingValue 和 matchIfMissing 區(qū)別

  • havingValue: 表示要匹配的屬性值的屬性名。當(dāng)配置文件中該屬性的值為指定的值時(shí),類或方法將被條件注解所影響。如果配置文件中未設(shè)置該屬性,或者屬性值不等于指定的值,則類或方法不會(huì)被條件注解所影響。
  • matchIfMissing: 表示在配置文件中未找到該屬性時(shí)是否匹配。默認(rèn)為 false,表示只有在配置文件中設(shè)置了該屬性時(shí)才會(huì)匹配。如果設(shè)置為 true,則即使配置文件中未設(shè)置該屬性,也會(huì)匹配。當(dāng)配置文件中未找到該屬性時(shí),如果 matchIfMissing 為 true,則類或方法將被條件注解所影響;如果 matchIfMissing 為 false,則類或方法不會(huì)被條件注解所影響。

因此,havingValue 和 matchIfMissing 的區(qū)別在于,havingValue 用于指定要匹配的屬性值,而 matchIfMissing 用于控制類或方法是否在屬性未找到時(shí)被條件注解所影響。

到此這篇關(guān)于Spring中的@ConditionalOnProperty注解使用詳解的文章就介紹到這了,更多相關(guān)@ConditionalOnProperty注解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot深入淺出分析初始化器

    SpringBoot深入淺出分析初始化器

    這篇文章主要介紹了SpringBoot初始化器的分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Java?泛型超詳細(xì)入門(mén)講解

    Java?泛型超詳細(xì)入門(mén)講解

    這篇文章主要介紹了Java基礎(chǔ)泛型詳情,泛型是JDK5中引入的特性,它提供了編譯時(shí)類型安全檢測(cè)機(jī)制,該機(jī)制允許在編譯時(shí)檢測(cè)到非法的類型,下面文章的詳細(xì)介紹,需要的朋友可以參考一下
    2022-04-04
  • Maven之pom.xml文件中的Build配置解析

    Maven之pom.xml文件中的Build配置解析

    這篇文章主要介紹了Maven之pom.xml文件中的Build配置解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • RESTful?API設(shè)計(jì)原則與實(shí)現(xiàn)示例詳解

    RESTful?API設(shè)計(jì)原則與實(shí)現(xiàn)示例詳解

    這篇文章主要為大家介紹了RESTful?API設(shè)計(jì)原則與實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Spring OAuth2.0 單元測(cè)試解決方案

    Spring OAuth2.0 單元測(cè)試解決方案

    這篇文章主要介紹了Spring OAuth2.0 單元測(cè)試解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • mybatisplus?復(fù)合主鍵(多主鍵)?CRUD示例詳解

    mybatisplus?復(fù)合主鍵(多主鍵)?CRUD示例詳解

    這篇文章主要介紹了mybatisplus?復(fù)合主鍵(多主鍵)?CRUD實(shí)例詳解,本文通過(guò)實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處

    java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處

    java 中的static關(guān)鍵字和final關(guān)鍵字的不同之處,需要的朋友可以參考一下
    2013-03-03
  • spring中使用mybatis plus連接sqlserver的方法實(shí)現(xiàn)

    spring中使用mybatis plus連接sqlserver的方法實(shí)現(xiàn)

    這篇文章主要介紹了spring中使用mybatis plus連接sqlserver的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代碼詳解

    spring boot-2.1.16整合swagger-2.9.2 含yml配置文件的代碼詳解

    這篇文章主要介紹了spring boot-2.1.16整合swagger-2.9.2 含yml配置文件,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java使用BigDecimal公式精確計(jì)算及精度丟失問(wèn)題

    Java使用BigDecimal公式精確計(jì)算及精度丟失問(wèn)題

    在工作中經(jīng)常會(huì)遇到數(shù)值精度問(wèn)題,比如說(shuō)使用float或者double的時(shí)候,可能會(huì)有精度丟失問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Java使用BigDecimal公式精確計(jì)算及精度丟失問(wèn)題的相關(guān)資料,需要的朋友可以參考下
    2023-01-01

最新評(píng)論

宜良县| 阿荣旗| 年辖:市辖区| 南乐县| 时尚| 大竹县| 九台市| 虞城县| 大同市| 新乡市| 永昌县| 新源县| 白城市| 福清市| 临澧县| 北海市| 贺兰县| 龙海市| 卓尼县| 应城市| 济南市| 临泉县| 上饶市| 建平县| 乌兰察布市| 贵南县| 天津市| 铁岭市| 乡宁县| 海兴县| 监利县| 丰镇市| 修文县| 江西省| 朔州市| 临高县| 鄯善县| 泾源县| 宝丰县| 西乌珠穆沁旗| 望江县|