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

SpringBoot之@Value獲取application.properties配置無效的解決

 更新時(shí)間:2023年03月06日 16:41:19   作者:獵人everest  
這篇文章主要介紹了SpringBoot之@Value獲取application.properties配置無效的解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@Value獲取application.properties配置無效問題

無效的原因主要是要注意@Value使用的注意事項(xiàng):

  • 1、不能作用于靜態(tài)變量(static);
  • 2、不能作用于常量(final);
  • 3、不能在非注冊的類中使用(需使用@Componet、@Configuration等);
  • 4、使用有這個(gè)屬性的類時(shí),只能通過@Autowired的方式,用new的方式是不會自動(dòng)注入這些配置的。

這些注意事項(xiàng)也是由它的原理決定的:

springboot啟動(dòng)過程中,有兩個(gè)比較重要的過程,如下:

  • 1 、掃描,解析容器中的bean注冊到beanFactory上去,就像是信息登記一樣。
  • 2、 實(shí)例化、初始化這些掃描到的bean。

@Value的解析就是在第二個(gè)階段。BeanPostProcessor定義了bean初始化前后用戶可以對bean進(jìn)行操作的接口方法,它的一個(gè)重要實(shí)現(xiàn)類AutowiredAnnotationBeanPostProcessor正如javadoc所說的那樣,為bean中的@Autowired和@Value注解的注入功能提供支持。

下面說下兩種方式:

resource.test.imageServer=http://image.everest.com

1、第一種

@Configuration
public class EverestConfig {
?
? ? @Value("${resource.test.imageServer}")
? ? private String imageServer;
?
? ? public String getImageServer() {
? ? ? ? return imageServer;
? ? }
?
}

2、第二種

@Component
@ConfigurationProperties(prefix = "resource.test")
public class TestUtil {
?
? ? public String imageServer;
?
? ? public String getImageServer() {
? ? ? ? return imageServer;
? ? }
?
? ? public void setImageServer(String imageServer) {
? ? ? ? this.imageServer = imageServer;
? ? }
}

然后在需要的地方注入就可

? ? @Autowired
? ? private TestUtil testUtil;
?
? ? @Autowired
? ? private EverestConfig everestConfig;
?
?
? ? @GetMapping("getImageServer")
? ? public String getImageServer() {
? ? ? ? return testUtil.getImageServer();
// ? ? ? ?return everestConfig.getImageServer();
? ? }?

@Value獲取application.properties中的配置取值為Null

@Value("${spring.datasource.url}")

private String url;

獲取值為NUll。

解決方法

不要使用new的方法去創(chuàng)建工具類(DBUtils)對象,而是使用@Autowired的方式交由springboot來管理,在工具類上加上@Component,定義的屬性變量不要加static。

正確做法

@Autowired
private DBUtils jdbc;
??
@Component
public class DBUtils{
? ??
? ? @Value("${spring.datasource.url}")
? ? private String url;
}

總結(jié)

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

相關(guān)文章

  • Java spring boot 實(shí)現(xiàn)支付寶支付功能的示例代碼

    Java spring boot 實(shí)現(xiàn)支付寶支付功能的示例代碼

    這篇文章主要介紹了Java spring boot 實(shí)現(xiàn)支付寶支付功能,本文通過實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Maven直接依賴、間接依賴、依賴沖突、依賴仲裁的實(shí)現(xiàn)

    Maven直接依賴、間接依賴、依賴沖突、依賴仲裁的實(shí)現(xiàn)

    本文主要介紹了Maven直接依賴、間接依賴、依賴沖突、依賴仲裁的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • java運(yùn)行時(shí)數(shù)據(jù)區(qū)域和類結(jié)構(gòu)詳解

    java運(yùn)行時(shí)數(shù)據(jù)區(qū)域和類結(jié)構(gòu)詳解

    這篇文章主要介紹了java運(yùn)行時(shí)數(shù)據(jù)區(qū)域和類結(jié)構(gòu),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Spring Boot整合MyBatis連接Oracle數(shù)據(jù)庫的步驟全紀(jì)錄

    Spring Boot整合MyBatis連接Oracle數(shù)據(jù)庫的步驟全紀(jì)錄

    這篇文章主要給大家介紹了關(guān)于Spring Boot整合MyBatis連接Oracle數(shù)據(jù)庫的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • Java?ThreadPoolExecutor線程池有關(guān)介紹

    Java?ThreadPoolExecutor線程池有關(guān)介紹

    這篇文章主要介紹了Java?ThreadPoolExecutor線程池有關(guān)介紹,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • JAVA中出現(xiàn)異常、拋出異常后續(xù)代碼是否執(zhí)行情況詳析

    JAVA中出現(xiàn)異常、拋出異常后續(xù)代碼是否執(zhí)行情況詳析

    當(dāng)產(chǎn)生異常后,并在異常處理器中進(jìn)行執(zhí)行之后,程序會是如何的一種狀態(tài),是終止還是繼續(xù)執(zhí)行處理之后的代碼呢,下面這篇文章主要給大家介紹了關(guān)于JAVA中出現(xiàn)異常、拋出異常后續(xù)代碼是否執(zhí)行情況的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • Java BeanUtils工具類常用方法講解

    Java BeanUtils工具類常用方法講解

    這篇文章主要介紹了Java BeanUtils工具類常用方法講解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之健身俱樂部管理系統(tǒng)的實(shí)現(xiàn)

    Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之健身俱樂部管理系統(tǒng)的實(shí)現(xiàn)

    這是一個(gè)使用了java+SSM+Mysql+Jsp開發(fā)的健身俱樂部管理系統(tǒng),是一個(gè)畢業(yè)設(shè)計(jì)的實(shí)戰(zhàn)練習(xí),具有俱樂部管理該有的所有功能,感興趣的朋友快來看看吧
    2022-02-02
  • Mybatis關(guān)于動(dòng)態(tài)排序 #{} ${}問題

    Mybatis關(guān)于動(dòng)態(tài)排序 #{} ${}問題

    這篇文章主要介紹了Mybatis關(guān)于動(dòng)態(tài)排序 #{} ${}問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Spring MVC 簡單的hello world的實(shí)現(xiàn)

    Spring MVC 簡單的hello world的實(shí)現(xiàn)

    這篇文章主要介紹了Spring MVC 簡單的hello world的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論

华亭县| 大连市| 航空| 汨罗市| 都兰县| 巴彦淖尔市| 靖安县| 柳州市| 卢氏县| 呼玛县| 贵溪市| 鄂托克旗| 明水县| 昌吉市| 巫溪县| 枣庄市| 婺源县| 祁连县| 江门市| 阜新市| 兴海县| 绍兴市| 安庆市| 赤壁市| 岳池县| 于田县| 射洪县| 建水县| 滦平县| 宁乡县| 横峰县| 当涂县| 永定县| 乾安县| 宽甸| 神木县| 高陵县| 甘孜县| 普洱| 泽库县| 凤庆县|