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

使用@ConditionalOnProperty控制是否加載的操作

 更新時(shí)間:2021年06月11日 15:44:42   作者:純真-Cloud  
這篇文章主要介紹了使用@ConditionalOnProperty控制是否加載的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@ConditionalOnProperty控制是否加載

public interface OSService {
	void os();
}
 
@ConditionalOnProperty(prefix = "custom.os", name = "name", havingValue = "linux")
@Service("osService")
public class LinuxService implements OSService {
	
	@Override
	public void os() {
		System.out.println("Now OS is Linux!");
	}
}
 
@ConditionalOnProperty(prefix = "custom.os", name = "name", havingValue = "windows")
@Service("osService")
public class WindowsService implements OSService {
	@Override
	public void os() {
		System.out.println("Now OS is Windows!");
	}
}
 
@RequestMapping(path = "test")
@RestController
public class TempRestController {
 
	@Autowired
	OSService osService;
	@PostMapping(path = "condition")
	public void condition() {
		osService.os();
	}
}

配置文件 application.yml:

custom:
   os:
      name: linux

@ConditionalOnProperty的作用及用法

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

配置類代碼:

@Configuration
@ConditionalOnProperty(prefix = "filter",name = "loginFilter",havingValue = "true")
public class FilterConfig {
 //prefix為配置文件中的前綴,
 //name為配置的名字
 //havingValue是與配置的值對比值,當(dāng)兩個值相同返回true,配置類生效.
    @Bean
    public FilterRegistrationBean getFilterRegistration() {
        FilterRegistrationBean filterRegistration  = new FilterRegistrationBean(new LoginFilter());
        filterRegistration.addUrlPatterns("/*");
        return filterRegistration;
    }
}

配置文件中的代碼

filter.loginFilter=true

測試

當(dāng)配置文件中值為true時(shí):輸出了"過濾器"三個字,說明loginFilter生效了,說明配置類生效了。

在這里插入圖片描述

當(dāng)配置文件中值為false時(shí):沒有輸出了"過濾器"三個字,說明loginFilter沒有生效,說明配置類沒有生效。

在這里插入圖片描述

總結(jié):

通過@ConditionalOnProperty控制配置類是否生效,可以將配置與代碼進(jìn)行分離,實(shí)現(xiàn)了更好的控制配置。

@ConditionalOnProperty實(shí)現(xiàn)是通過havingValue與配置文件中的值對比,返回為true則配置類生效,反之失效。

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring?異步接口返回結(jié)果的四種方式

    Spring?異步接口返回結(jié)果的四種方式

    這篇文章主要介紹了Spring?異步接口返回結(jié)果的四種方式,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-08-08
  • java調(diào)用ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換的方法

    java調(diào)用ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換的方法

    這篇文章主要介紹了java調(diào)用ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換的方法,較為詳細(xì)分析了java視頻格式轉(zhuǎn)換所需要的步驟及具體實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • Spring?Boot集成Milvus快速入門demo示例詳解

    Spring?Boot集成Milvus快速入門demo示例詳解

    Milvus是一種高性能向量數(shù)據(jù)庫,支持從筆記本到大型分布式系統(tǒng)的多環(huán)境運(yùn)行,它以開源和云服務(wù)形式提供,是LFAI & Data Foundation的項(xiàng)目,采用Apache 2.0許可,Milvus特別支持高并行化和解耦的系統(tǒng)架構(gòu),使其能夠隨數(shù)據(jù)增長而擴(kuò)展,支持各種復(fù)雜搜索功能,滿足企業(yè)級AI應(yīng)用需求
    2024-09-09
  • SpringMVC之@InitBinder注解詳解

    SpringMVC之@InitBinder注解詳解

    這篇文章主要介紹了SpringMVC之@InitBinder注解詳解,springmvc并不是能對所有類型的參數(shù)進(jìn)行綁定的,如果對日期Date類型參數(shù)進(jìn)行綁定,就會報(bào)錯IllegalStateException錯誤,需要的朋友可以參考下
    2024-01-01
  • Mybatis中typeAliases的使用

    Mybatis中typeAliases的使用

    這篇文章主要介紹了Mybatis中typeAliases的使用,需要的朋友可以參考下
    2017-08-08
  • 解決springboot3:mybatis-plus依賴錯誤:org.springframework.beans.factory.UnsatisfiedDependencyException

    解決springboot3:mybatis-plus依賴錯誤:org.springframework.beans.fac

    這篇文章主要介紹了解決springboot3:mybatis-plus依賴錯誤:org.springframework.beans.factory.UnsatisfiedDependencyException問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • SpringSecurity頁面授權(quán)與登錄驗(yàn)證實(shí)現(xiàn)(內(nèi)存取值與數(shù)據(jù)庫取值)

    SpringSecurity頁面授權(quán)與登錄驗(yàn)證實(shí)現(xiàn)(內(nèi)存取值與數(shù)據(jù)庫取值)

    Spring Security是一個能夠?yàn)榛赟pring的企業(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架,本文主要介紹了SpringSecurity頁面授權(quán)與登錄驗(yàn)證實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • SpringBoot無法解析parameter參數(shù)問題的解決方法

    SpringBoot無法解析parameter參數(shù)問題的解決方法

    使用最新版的 Springboot 3.2.1(我使用3.2.0)搭建開發(fā)環(huán)境進(jìn)行開發(fā),調(diào)用接口時(shí)出現(xiàn)奇怪的錯,本文小編給大家介紹了SpringBoot無法解析parameter參數(shù)問題的原因及解決方法,需要的朋友可以參考下
    2024-04-04
  • java 較大數(shù)據(jù)量取差集,list.removeAll性能優(yōu)化詳解

    java 較大數(shù)據(jù)量取差集,list.removeAll性能優(yōu)化詳解

    這篇文章主要介紹了java 較大數(shù)據(jù)量取差集,list.removeAll性能優(yōu)化詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 使用springboot防止反編譯proguard+xjar

    使用springboot防止反編譯proguard+xjar

    介紹了三種代碼混淆和加密工具的使用方法:ProGuard、Xjar和ClassFinal,ProGuard用于混淆Java字節(jié)碼,Xjar提供對JAR包內(nèi)資源的加密和動態(tài)解密,而ClassFinal則支持直接加密JAR包或WAR包,通過預(yù)研和實(shí)際操作
    2024-11-11

最新評論

凯里市| 翼城县| 原平市| 吴桥县| 延寿县| 长海县| 祁阳县| 屯门区| 陆河县| 双城市| 仙桃市| 永寿县| 马鞍山市| 建宁县| 桂阳县| 镇安县| 长子县| 绩溪县| 蚌埠市| 灵山县| 砀山县| 巴彦淖尔市| 麻城市| 瑞昌市| 通辽市| 宝坻区| 平昌县| 枣阳市| 秀山| 宁河县| 镇坪县| 汝城县| 灌云县| 塘沽区| 宜黄县| 易门县| 汉寿县| 顺平县| 凤凰县| 体育| 台山市|