SpringBoot中@Autowired爆紅原理分析及解決
@Autowired爆紅原理分析及解決
SpringBoot中的service層經(jīng)常需要將mapper注入進來,但是注入一個mapper接口時經(jīng)常會爆紅
代碼:
@Autowired
private UserMapper userMapper;圖片:

爆紅的原因是@Autowired是Spring的注解,提示找不到對他的bean,因為你沒有顯示的將userMapper注入到Spring容器中去管理。
解決方案1
這種情況只需要在UserMapper.java接口上添加@Repository注解即可,此注解是Spring的注解,將當前類注冊到Spring容器中實例化為一個bean,所以@Autowired就能找到此bean了。
請看:


解決方案2
還有一種方式就是直接將@Autowired換成@Resource注解,此注解是JDK中的注解,不會向@Autowired那樣去Spring容器中尋找bean。
請看:

而在接口中并沒有添加任何注解

題外話:
這里要說下@Mapper注解,此注解是Mybatis中的注解,只是標注此類是一個Mapper。
你可以在每一個Mapper接口了上使用此注解,或者在啟動類上使用@MapperScan注解直接掃描整個或多個包,效果是一樣的,二者選其一即可。
并且這兩個注解跟上面的注解沒有任何關系,并不是注入之類的作用。
SpringBoot @Autowired的bean帶紅線
可以在設置中,將Autowiring for Bean Class的勾取消掉即可

總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Java中的BufferedInputStream與BufferedOutputStream使用示例
BufferedInputStream和BufferedOutputStream分別繼承于FilterInputStream和FilterOutputStream,代表著緩沖區(qū)的輸入輸出,這里我們就來看一下Java中的BufferedInputStream與BufferedOutputStream使用示例:2016-06-06
Nginx+SpringCloud Gateway搭建項目訪問環(huán)境
本文主要介紹了Nginx+SpringCloud Gateway搭建項目訪問環(huán)境,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08
Spring?Boot深入學習數(shù)據(jù)訪問之Spring?Data?JPA與Hibernate的應用
Spring?Data?JPA是Spring?Data的子項目,在使用Spring?Data?JPA之前,先了解一下Hibernate,因為Spring?Data?JPA是由Hibernate默認實現(xiàn)的2022-10-10
IDEA 中使用 Big Data Tools 連接大數(shù)據(jù)組件
本文主要介紹了IDEA 中使用 Big Data Tools 連接大數(shù)據(jù)組件,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-05-05
Java基本類型與byte數(shù)組之間相互轉(zhuǎn)換方法
下面小編就為大家?guī)硪黄狫ava基本類型與byte數(shù)組之間相互轉(zhuǎn)換方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08

