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

SpringBoot @Autowired注入為空的情況解讀

 更新時間:2023年03月06日 14:22:09   作者:一個新手^_^  
這篇文章主要介紹了SpringBoot @Autowired注入為空的情況解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@Autowired注入為空的情況解讀

因最近在開發(fā)中遇到了使用@Autowired注解 自動裝配時,會報空指針,發(fā)現(xiàn)對象并沒有裝配進來,通過查詢,總結(jié)了幾種可能造成這種情況的原因。

記錄下

1.最簡單的一種情況,查看被裝配的類,也就是@Autowired注解下的類是否添加了注解交給SpringBoot托管,@service等注解,或者是直接加上@Component注解。

2.看你的xxxxxApplication是否在根目錄,因為springboot默認掃描的就是啟動類下的目錄(這個我記著只限于Springboot2.0.5之前的版本,因為新版可以通過@ComponenScan注解去指定掃描范圍)。

3.@Service、@Componet、@Configuration、@Repository等Spring注解未被掃描到,例如:springboot的主類掃描規(guī)則,就是說需要查看你的Springboot啟動類,xxxxxApplication,查看啟動類上注解是否加了@ComponenScan注解,是否指定了掃描范圍。

使用springboot啟動類配置掃描的兩種注解配置方式:

  • 1、@Controller @EnableAutoConfiguration @ComponentScan 。
  • 2、@SpringBootApplication

4.使用救急方法,這是如果沒找到原因,我們先使用其他方法讓程序先能正常運行和調(diào)試,后續(xù)再查找問題。

@Autowired
?private SchedulerFactoryBean schedulerFactoryBean;
? ??
?private static QuartzManager quartzManager;
? ??
?/**
? * 通過@PostConstruct實現(xiàn)初始化bean之前進行的操作
? * @desc 初始化操作,得到QuartzManager實例
? * @Date 2019年1月7日
? */
?@PostConstruct?
?public void init() { ?
? ? ? quartzManager = this; ?
? ? ? quartzManager.schedulerFactoryBean = this.schedulerFactoryBean; ? ? ? ?
}

使用@PostConstruct 初始化。

5.這個原因很重要,也是經(jīng)常會被忽略的一個因素。調(diào)用者是new出來的。如果類A中存在成員屬性B, B是通過@Autowired自動注入,而類A的實例是通過new的方式產(chǎn)生的,那么自動注入會失效的,此時通過Spring的上下文獲取所有的Bean的方法來獲取B。此時,看看你在報空指針的那個類,看它是否是被new出來的,如果是,不妨使用SpringUtil.getBean()方法替換下, 然后再試下!

@Autowired注入bean找不到異常

異常描述

***************************
APPLICATION FAILED TO START
***************************

Description:

Field clientAuthService in com.yinhai.mzgh.eurekaclient.feign.interceptor.Oauth2RequestInterceptor 
required a bean of type 'com.yinhai.mzgh.eurekaclient.feign.service.ClientAuthService' that could not be found.

The injection point has the following annotations:
    - @org.springframework.beans.factory.annotation.Autowired(required=true)


Action:

Consider defining a bean of type 'com.yinhai.mzgh.eurekaclient.feign.service.ClientAuthService' in your configuration.

問題原因

這個問題是環(huán)境問題,在Profiles 中之前是dev 環(huán)境

在這里插入圖片描述

我剛來,猜測是 dev環(huán)境沒有搭建好的原因

總結(jié)

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

相關(guān)文章

  • IDEA Debug模式下改變各類型變量值的方法

    IDEA Debug模式下改變各類型變量值的方法

    這篇文章主要介紹了IDEA Debug模式下改變各類型變量值的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • 一文學(xué)會處理SpringBoot統(tǒng)一返回格式

    一文學(xué)會處理SpringBoot統(tǒng)一返回格式

    這篇文章主要介紹了一文學(xué)會處理SpringBoot統(tǒng)一返回格式,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • Springboot整合nacos報錯無法連接nacos的解決

    Springboot整合nacos報錯無法連接nacos的解決

    這篇文章主要介紹了Springboot整合nacos報錯無法連接nacos的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • SpringBoot集成tomcat詳解實現(xiàn)過程

    SpringBoot集成tomcat詳解實現(xiàn)過程

    采用spring boot之后,一切變得如此簡單,打包->java-jar->運維,只需要一個jar包便可以隨意部署安裝。這篇文章,將對 spring boot集成tomcat的源碼進行分析,探索其內(nèi)部的原理
    2023-02-02
  • 使用Java實現(xiàn)壓縮文件夾并打包下載

    使用Java實現(xiàn)壓縮文件夾并打包下載

    這篇文章主要為大家詳細介紹了如何使用Java實現(xiàn)壓縮文件夾并打包下載,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • springboot controller參數(shù)注入方式

    springboot controller參數(shù)注入方式

    這篇文章主要介紹了springboot controller參數(shù)注入方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之棧和隊列

    Java數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之棧和隊列

    這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí)之棧和隊列,文中有非常詳細的代碼示例,對正在學(xué)習(xí)java的小伙伴們有一定的幫助,需要的朋友可以參考下
    2021-05-05
  • 深入剖析Java ArrayQueue(JDK)的源碼

    深入剖析Java ArrayQueue(JDK)的源碼

    本篇文章主要給大家介紹一個比較簡單的JDK為我們提供的容器ArrayQueue,這個容器主要是用數(shù)組實現(xiàn)的一個單向隊列,整體的結(jié)構(gòu)相對其他容器來說就比較簡單了,感興趣的可以了解一下
    2022-08-08
  • SpringBoot3.2.2整合MyBatis-Plus3.5.5依賴不兼容的問題解決

    SpringBoot3.2.2整合MyBatis-Plus3.5.5依賴不兼容的問題解決

    這篇文章給大家介紹了Spring Boot 3.2.2整合MyBatis-Plus 3.5.5依賴不兼容問題,文中通過代碼示例和圖文介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-01-01
  • RabbitMQ消息丟失解決方案

    RabbitMQ消息丟失解決方案

    把這篇文章主要為大家介紹了如何保證RabbitMQ消息不丟失的解決方發(fā),分從從丟失的三種情況給大家介紹不同的解決方案,感興趣的小伙伴可以參考閱讀本文
    2023-07-07

最新評論