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

SpringBoot注入靜態(tài)屬性或靜態(tài)對象的方法

 更新時間:2024年12月21日 10:44:12   作者:假女吖?  
我們在使用SpringBoot為一些靜態(tài)屬性或者靜態(tài)對象注入時會發(fā)現(xiàn)注入不成功,我們可以以下這幾種方式把需要注入的值注入到靜態(tài)屬性中,感興趣的朋友一起看下

SpringBoot注入靜態(tài)屬性或靜態(tài)對象

前言

我們在使用SpringBoot為一些靜態(tài)屬性或者靜態(tài)對象注入時會發(fā)現(xiàn)注入不成功。
我們可以以下這幾種方式把需要注入的值注入到靜態(tài)屬性中。

setter方式注入

代碼如下(示例):@Value與@Autowired都可以使用

@SpringBootTest(classes = Application.class)
public class TestApplication {
    private static DaoUtil daoUtil;
    private static String ACTIVE;
    // 這里其實我們只需要一個setter方法
    // 即可把springboot中的配置文件中的屬性注入到靜態(tài)屬性中
    @Value("${spring.profiles.active}")
    public  void setACTIVE( String ACTIVE) {
        TestApplication.ACTIVE = ACTIVE;
    }
    @Autowired
    public void setDaoUtil(DaoUtil daoUtil) {
        TestApplication.daoUtil = daoUtil;
    }
    @Test
    void contextLoads() {
        System.out.println(getActive());
        System.out.println(daoUtil);
    }
    public static String getActive(){
        return ACTIVE;
    }
}

@PostConstruct init方式注入

@Autowired
DaoUtil daoUtilProxy;
@Value("${spring.profiles.active}")
String  activeProxy;
private static DaoUtil daoUtil;
private static String ACTIVE;
@PostConstruct
private  void init() {
    daoUtil = daoUtilProxy;
    ACTIVE = activeProxy;
}

注意

兩種方式都能成功注入對象或?qū)傩浴?注入成功的前提是屬性或?qū)ο笏诘念愂荢pringBoot容器的組件(Bean)。

// 用ide工具生成靜態(tài)對象setter方法時會自動的把static的修飾詞帶上
// 這樣也會讓注入不成功(作者的慘痛經(jīng)歷??????)
// 這里我們需要把static去掉即可
public static void setACTIVE(String ACTIVE) {
        TestApplication.ACTIVE = ACTIVE;
}

總結(jié)

我們需要可以在組件類中使用@Value或@Autowired注入靜態(tài)屬性,才能注入成功。否則不成效;

到此這篇關(guān)于SpringBoot注入靜態(tài)屬性或靜態(tài)對象的文章就介紹到這了,更多相關(guān)SpringBoot注入靜態(tài)屬性內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java?Swing監(jiān)聽器的原理及使用方法舉例

    Java?Swing監(jiān)聽器的原理及使用方法舉例

    swing是一個比較老的技術(shù)了,我覺得學(xué)習(xí)它還是很有必要的,也比較容易激發(fā)學(xué)習(xí)的興趣,這篇文章主要介紹了Java?Swing監(jiān)聽器的原理及使用方法的相關(guān)資料,需要的朋友可以參考下
    2025-08-08
  • Spring中的ClassPathXmlApplicationContext源碼詳解

    Spring中的ClassPathXmlApplicationContext源碼詳解

    這篇文章主要介紹了Spring中的ClassPathXmlApplicationContext源碼詳解,ApplicationContext的主要實現(xiàn)類是ClassPathXmlApplicationContext和FileSystemXmlApplicationContext,前者默認(rèn)從類路徑加載配置文件,后者默認(rèn)從文件系統(tǒng)中裝載配置文件,需要的朋友可以參考下
    2023-12-12
  • mybatis判斷int是否為空的時候,需要注意的3點

    mybatis判斷int是否為空的時候,需要注意的3點

    這篇文章主要介紹了mybatis判斷int是否為空的時候,需要注意的3點,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringBoot3-yaml文件配置方式

    SpringBoot3-yaml文件配置方式

    這篇文章主要介紹了SpringBoot3-yaml文件配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 關(guān)于Feign的覆寫默認(rèn)配置和Feign的日志

    關(guān)于Feign的覆寫默認(rèn)配置和Feign的日志

    這篇文章主要介紹了關(guān)于Feign的覆寫默認(rèn)配置和Feign的日志方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Springboot工具類StringUtils使用教程

    Springboot工具類StringUtils使用教程

    這篇文章主要介紹了Springboot內(nèi)置的工具類之StringUtils的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-12-12
  • SpringBatch簡單入門案例

    SpringBatch簡單入門案例

    文章介紹了SpringBatch批處理框架的使用,包括其基本概念、優(yōu)勢、架構(gòu)以及入門案例,通過簡單的任務(wù)和數(shù)據(jù)庫連接配置,展示了如何使用SpringBatch進(jìn)行基本的批處理操作,感興趣的朋友跟隨小編一起看看吧
    2025-12-12
  • Java并發(fā)實例之CyclicBarrier的使用

    Java并發(fā)實例之CyclicBarrier的使用

    這篇文章主要介紹了Java并發(fā)實例之CyclicBarrier的使用,涉及CyclicBarrier的介紹,以及相關(guān)的并發(fā)實例,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • 詳細(xì)介紹使用Java調(diào)用Python的四種方法

    詳細(xì)介紹使用Java調(diào)用Python的四種方法

    這篇文章主要給大家介紹了關(guān)于使用Java調(diào)用Python的四種方法,每種方法根據(jù)實際項目需求有其適用場景,其中,推薦使用Runtime.getRuntime()方法,因為它更為簡潔且易于實現(xiàn),需要的朋友可以參考下
    2024-10-10
  • springboot restTemplate連接池整合方式

    springboot restTemplate連接池整合方式

    這篇文章主要介紹了springboot restTemplate連接池整合方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10

最新評論

宁阳县| 新乐市| 光山县| 维西| 迁西县| 凌源市| 合川市| 兴文县| 通河县| 台湾省| 繁昌县| 延长县| 襄垣县| 津南区| 庆安县| 盐津县| 汉阴县| 固镇县| 丰县| 景德镇市| 盐山县| 澎湖县| 斗六市| 灵宝市| 随州市| 同心县| 美姑县| 文登市| 盖州市| 天门市| 鄯善县| 会同县| 长岛县| 昌图县| 宜君县| 郯城县| 固原市| 灯塔市| 五华县| 大名县| 青浦区|