IDEA 使用@Autowired提示Field injection is not recommended


摘要:IDEA 使用@Autowired提示Field injection is not recommended問題的解決辦法。

  在使用@Autowired注解進行bean注入,完成自動裝配的工作時,IDEA經常會警告Field injection is not recommended。點擊查看警告詳細:Spring Team recommends : “Always use constuctor based dependency injection in your beans ,Always use assertions for mandatory dependencies”。這句話的意思是Spring團隊建議:“在對bean進行依賴注入時,請始終使用構造器注入方式,始終對強制依賴項使用斷言”。

  但是構造器注入方式就是因為代碼不夠簡潔才被我們棄之不用的,而且用屬性注入時,代碼位一直運行正常。所以,我們可以忽略這個warning黃牌警告,其解決辦法有如下兩個。

將@Autowired注解替換為@Resource注解

  注解@Resource是先根據Bean的名稱去匹配Bean,若獲取不到,則根據類型去匹配。而注解@Autowired則是根據類型匹配,若想通過名稱匹配,則需要借助Spring的@Qualifier注解。

不檢查屬性注入

  IntelliJ IDEA 版本2021.3.1 (Ultimate Edition)。修改IDEA中Settings或者Performances里面,對屬性注入的檢查,依次找到:Performances->editor->code style->inspection-> Spring | Spring Core | Code | Non recommended 'field' injections,去掉鈎即可,如下圖所示:


不檢查屬性注入

結束語

  那么大家對於這件事都是怎么看的呢?歡迎在文章下方留言討論,三人行必有我師焉!小編每條都會仔仔細細地看。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM