關(guān)于@ConfigurationProperties注解全解析
@ConfigurationProperties注解解析
@ConfigurationProperties注解類似于@value 可以將application中的配置映射到j(luò)ava變量中 通過@ConfigurationProperties,可以配置是否加載bean
示例
application.yml
spring: complex: #重量級(jí)模式是否開啟 在線上可以不加載開發(fā)環(huán)境bean enable: true
ConfigProperties 配置是否加載的標(biāo)識(shí) 加載為true
不加載為fasle 對(duì)應(yīng)上文配置
@ConfigurationProperties(prefix = "spring.complex") public class ConfigProperties { private boolean enable; public boolean isEnable() { return enable; } public void setEnable(boolean enable) { this.enable = enable; } }
通過@EnableConfigurationProperties指定上文配置的標(biāo)識(shí)
并通過@ConditionalOnProperty判斷 下文實(shí)現(xiàn)
如果application里面配置的為false或者不配置(默認(rèn)為false)則swagger相關(guān)配置不會(huì)加載 提高啟動(dòng)速度
@Configuration(proxyBeanMethods = false) @EnableSwagger2 @EnableConfigurationProperties(ConfigProperties.class) @ConditionalOnProperty(prefix = "spring.complex", name = "enable", havingValue = "true", matchIfMissing = false) 指定通過spring.complex.enable屬性判斷 如果為true 則加載 默認(rèn)為false public class SwaggerConfig{ }
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot中添加監(jiān)聽器及創(chuàng)建線程的代碼示例
這篇文章主要介紹了SpringBoot中如何添加監(jiān)聽器及創(chuàng)建線程,文中有詳細(xì)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下2023-06-06Spring探秘之如何妙用BeanPostProcessor
BeanPostProcessor也稱為Bean后置處理器,它是Spring中定義的接口,在Spring容器的創(chuàng)建過程中會(huì)回調(diào)BeanPostProcessor中定義的兩個(gè)方法,這篇文章主要給大家介紹了關(guān)于Spring探秘之如何妙用BeanPostProcessor的相關(guān)資料,需要的朋友可以參考下2022-01-01java使用短信設(shè)備發(fā)送sms短信的示例(java發(fā)送短信)
這篇文章主要介紹了java使用短信設(shè)備發(fā)送sms短信的示例(java發(fā)送短信),需要的朋友可以參考下2014-04-04Java Lock接口實(shí)現(xiàn)原理及實(shí)例解析
這篇文章主要介紹了Java Lock接口實(shí)現(xiàn)原理及實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04SpringBoot項(xiàng)目集成Swagger和swagger-bootstrap-ui及常用注解解讀
這篇文章主要介紹了SpringBoot項(xiàng)目集成Swagger和swagger-bootstrap-ui及常用注解解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03