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

關(guān)于@Component注解下的類無法@Autowired問題

 更新時間:2022年03月23日 15:17:34   作者:巴斯光甜  
這篇文章主要介紹了關(guān)于@Component注解下的類無法@Autowired問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@Component注解下類無法@Autowired

這個問題心累

在把我的一個非Web程序遷移從Spring遷移到SpringBoot時,出現(xiàn)了在@Component注解下@Autowired的類為null的情況,也就是沒注入成功,或者說是此類在bean加載之前就被調(diào)用了。

試了各種辦法,修改掃描包,修改@Component注解等等,皆未成功,后來看到了一個方法,探究了一下。

@Component
public class ComponentClass {
? ? @Autowired
? ? private JedisClient jedisClient;
? ? public static ComponentClass componentClass;
? ? @PostConstruct
? ? public void init(){
? ? ? ? componentClass = this;
? ? ? ? componentClass.jedisClient = this.jedisClient;
? ? }
}
  • 聲明一個此類的靜態(tài)變量,用以保存bean。
  • 使用@PostConstruct注解,將需要注入的類添加到靜態(tài)變量中。
  • 接下來,使用這個靜態(tài)變量來調(diào)用注入類就行了。

@PostConstruct這個注解的具體作用就是:

注解在方法上,表示此方法是在Spring實例化該bean之后馬上執(zhí)行此方法,之后才會去實例化其他bean。

這樣在Spring實例化ComponentClass之后,馬上執(zhí)行此方法,初始化ComponentClass靜態(tài)對象和成員變量jedisClient。

@Component注解下@Autowired報錯

這是由于 Springboot Bean 的加載機制所導(dǎo)致的,具體大家可以去研究源碼。

下面是我的解決方案

僅供參考

@Component
public class XxxConfig {
	// 1
    public static XxxConfig xxxConfig ;
    @Resource
    private RedisUtil redisUtil;
	// 2
    @PostConstruct
    public void init() {
        xxxConfig = this;
        xxxConfig.redisUtil = this.redisUtil;
    }
    
    public boolean test() {
    	// 3.使用 jwtConfig.redisUtil 形式調(diào)用
        return xxxConfig.redisUtil.set("abcd", "123456", 3600);
    }    
}

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

相關(guān)文章

  • 基于jvm java內(nèi)存區(qū)域的介紹

    基于jvm java內(nèi)存區(qū)域的介紹

    下面小編就為大家?guī)硪黄趈vm java內(nèi)存區(qū)域的介紹。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Java中的static--靜態(tài)變量你了解嗎

    Java中的static--靜態(tài)變量你了解嗎

    Java 中被 static 修飾的成員稱為靜態(tài)成員或類成員。它屬于整個類所有,而不是某個對象所有,即被類的所有對象所共享。靜態(tài)成員可以使用類名直接訪問,也可以使用對象名進(jìn)行訪問,.下面我們來詳細(xì)了解一下吧
    2021-09-09
  • 使用Jenkins Pipeline自動化構(gòu)建發(fā)布Java項目的方法

    使用Jenkins Pipeline自動化構(gòu)建發(fā)布Java項目的方法

    這篇文章主要介紹了使用Jenkins Pipeline自動化構(gòu)建發(fā)布Java項目的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • java常用Lambda表達(dá)式使用場景源碼示例

    java常用Lambda表達(dá)式使用場景源碼示例

    這篇文章主要為大家介紹了java常用Lambda表達(dá)式使用場景源碼示例及應(yīng)用解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • 基于springMvc+hibernate的web application的構(gòu)建

    基于springMvc+hibernate的web application的構(gòu)建

    下面小編就為大家?guī)硪黄趕pringMvc+hibernate的web application的構(gòu)建。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • SpringBoot模擬實現(xiàn)流式輸出效果

    SpringBoot模擬實現(xiàn)流式輸出效果

    這篇文章主要為大家詳細(xì)介紹了如何使用SpringBoot模擬實現(xiàn)流式輸出效果,并在前端使用流式接收數(shù)據(jù)并打印,感興趣的小伙伴可以參考一下
    2025-03-03
  • 關(guān)于JAVA中this的使用方法小結(jié)

    關(guān)于JAVA中this的使用方法小結(jié)

    現(xiàn)在讓大家看一個小例子,給你分享一下JAVA中“this”的用法,有需要的朋友可以參考一下
    2013-10-10
  • SpringBoot實現(xiàn)動態(tài)配置及項目打包部署上線功能

    SpringBoot實現(xiàn)動態(tài)配置及項目打包部署上線功能

    本文講解的是如何使用Spring動態(tài)配置文件,實現(xiàn)不同環(huán)境不同配置,靈活切換配置文件;以及講述了如何使用?Maven?打包,然后上傳至Linux服務(wù)器進(jìn)行部署,對SpringBoot打包部署上線過程感興趣的朋友一起看看吧
    2022-10-10
  • 修改IDEA代碼左側(cè)折疊線顏色的操作

    修改IDEA代碼左側(cè)折疊線顏色的操作

    這篇文章主要介紹了修改IDEA代碼左側(cè)折疊線顏色的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java 壓縮圖片并打包成ZIP文件的示例

    Java 壓縮圖片并打包成ZIP文件的示例

    這篇文章主要介紹了Java 壓縮圖片并打包成ZIP文件的示例,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12

最新評論

高清| 南阳市| 兰溪市| 新兴县| 北票市| 志丹县| 婺源县| 平遥县| 隆回县| 扎囊县| 磐安县| 滕州市| 忻城县| 灵武市| 长汀县| 新兴县| 龙山县| 华坪县| 东兴市| 青海省| 广平县| 玛沁县| 阿坝县| 天等县| 万州区| 德安县| 朔州市| 息烽县| 小金县| 开化县| 瓮安县| 乌兰察布市| 德格县| 抚远县| 大英县| 嘉义县| 常山县| 南乐县| 堆龙德庆县| 昭苏县| 杭州市|