欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot如何靜態(tài)加載@configurationProperties

 更新時間:2022年07月28日 10:00:39   作者:奇怪的守護神  
這篇文章主要介紹了springboot如何靜態(tài)加載@configurationProperties,本文一個錯誤案例和成功案例結(jié)合實例代碼給大家介紹的非常詳細,需要的朋友可以參考下

平時開發(fā),基本不改變的常量我們都放在了配置項里,如properties或yml文件里,這個時候為了只在啟動時候進行加載。如何做呢?

我們通過springboot的 @ConfigurationProperties 注解和static靜態(tài)化對應(yīng)屬性進行。

但如果操作不當,會導(dǎo)致加載的數(shù)據(jù)為空,至于為什么,看下面的案例。

1、錯誤案例

//錯誤1:get\set都是靜態(tài)方法
@Component
@ConfigurationProperties(prefix = "mobile")
public class MobileConfig
{
    public static Integer preview;

    public static Integer getPreview() {
        return preview;
    }

    public static void setPreview(Integer preview) {
        MobileConfig.preview = preview;
    }
}
//錯誤2:跟第一種差不多,只是用了lombok注解代替了get\set方法,get\set也都是靜態(tài)方法
@Data
@Component
@ConfigurationProperties(prefix = "mobile")
public class MobileConfig
{
    public static Integer preview;
}

2、成功案例

@Component
@ConfigurationProperties(prefix = "mobile")
public class MobileConfig
{
    public static Integer preview;

    public static Integer getPreview() {
        return preview;
    }

    public void setPreview(Integer preview) {
        MobileConfig.preview = preview;
    }
}
@Data
@Component
@ConfigurationProperties(prefix = "mobile")
public class MobileConfig
{
    public static Integer preview;

    public void setPreview(Integer preview) {
        MobileConfig.preview = preview;
    }
}                        

3、原因

spring在注入的時候,需要調(diào)用set 方法,如果這個方法是靜態(tài)方法,就沒法動態(tài)注入了,所以只需要把get方法加入static作為靜態(tài)方法即可,如果用了@Data,只需要重寫set方法即可。

到此這篇關(guān)于springboot如何靜態(tài)加載@configurationProperties的文章就介紹到這了,更多相關(guān)springboot靜態(tài)加載@configurationProperties內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中回調(diào)函數(shù)?(callback)?及其實際應(yīng)用場景

    Java中回調(diào)函數(shù)?(callback)?及其實際應(yīng)用場景

    在Java中回調(diào)函數(shù)(Callback)是一種常見的設(shè)計模式,用于實現(xiàn)異步操作或事件處理,這篇文章主要給大家介紹了關(guān)于Java中回調(diào)函數(shù)?(callback)?及其實際應(yīng)用場景的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • IDEA中thymeleaf語法沒有提示的問題及解決

    IDEA中thymeleaf語法沒有提示的問題及解決

    這篇文章主要介紹了IDEA中thymeleaf語法沒有提示的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java?多線程并發(fā)LockSupport

    Java?多線程并發(fā)LockSupport

    這篇文章主要介紹了Java?多線程并發(fā)LockSupport,LockSupport?類是用于創(chuàng)建鎖和其他同步類的基本線程阻塞原語,更多相關(guān)內(nèi)容需要得小伙伴可以參考一下下面文章內(nèi)容
    2022-06-06
  • 一次mybatis連接查詢遇到的坑實戰(zhàn)記錄

    一次mybatis連接查詢遇到的坑實戰(zhàn)記錄

    這篇文章主要給大家介紹了關(guān)于一次mybatis連接查詢遇到的坑的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 詳解Java Ajax jsonp 跨域請求

    詳解Java Ajax jsonp 跨域請求

    本篇文章主要介紹了詳解Java Ajax jsonp 跨域請求,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • java面試題之try中含return語句時代碼的執(zhí)行順序詳解

    java面試題之try中含return語句時代碼的執(zhí)行順序詳解

    這篇文章主要介紹了關(guān)于java中的一道面試題,這套題就是在try中含return語句時代碼的執(zhí)行順序,這個問題看似簡單,卻暗藏殺機??!文中通過一個個例子詳細介紹了其中玄機,需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-04-04
  • Java Spring Boot 集成Zookeeper

    Java Spring Boot 集成Zookeeper

    這篇文章主要介紹了Java Spring Boot 集成Zookeeper,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • springboot項目編譯提示無效的源發(fā)行版17解決辦法

    springboot項目編譯提示無效的源發(fā)行版17解決辦法

    這篇文章主要給大家介紹了關(guān)于springboot項目編譯提示無效的源發(fā)行版17解決辦法,這個錯誤意味著你的Spring Boot項目正在使用Java 17這個版本,但是你的項目中未配置正確的Java版本,需要的朋友可以參考下
    2023-06-06
  • Java使用Log4j記錄日志的方法詳解

    Java使用Log4j記錄日志的方法詳解

    log4j是一個常用的日志框架,用于記錄應(yīng)用程序的執(zhí)行過程或異常等記錄在日志文件中。本文將利用Log4j記錄日志,感興趣的可以了解一下
    2022-03-03
  • Windows中Tomcat整合到Eclipse的圖文教程

    Windows中Tomcat整合到Eclipse的圖文教程

    下面小編就為大家?guī)硪黄猈indows中Tomcat整合到Eclipse的圖文教程。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10

最新評論