日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Intellij IDEA如何去掉@Autowired 注入警告的方法

瀏覽:467日期:2024-09-01 08:52:04

問題

在Service層注入Mybatis的Mapper我們通常會(huì)使用@Autowired 自動(dòng)注入

@Autowiredprivate ProductMapper productMapper;

但是這樣Intellij IDEA會(huì)顯示紅色告警,提示不能自動(dòng)注入。

Intellij IDEA如何去掉@Autowired 注入警告的方法

當(dāng)我們?cè)贑ontroller層注入Service時(shí)我們也經(jīng)常直接在Filed上使用@Autowired 注解,這時(shí)候不顯示紅色警告,但是也顯示Field injection is not recommended 的建議

Intellij IDEA如何去掉@Autowired 注入警告的方法

原因

第一種情況是因?yàn)镮DEA可以識(shí)別并理解Spring的上下文。然而Mapper接口是Mybatis的,IDEA理解不了。所以會(huì)出現(xiàn)紅色告警。

而第二種原因是因?yàn)楣俜讲煌扑]使用Filed進(jìn)行注解,而推薦使用構(gòu)造器或Setter方法進(jìn)行注解,像下面兩種寫法就不會(huì)出現(xiàn)警告。

private final ProductService productService;@Autowiredpublic ProductController(ProductService productService) {this.productService = productService;}

or

private ProductService productService;@Autowiredpublic void setProductService(ProductService productService) {this.productService = productService;}

問題是什么

Field注入看起來非常好,夠簡(jiǎn)潔,代碼通俗易懂。你的類可以專注于業(yè)務(wù)而不被依賴注入所污染。你只需要把@Autowired扔到變量之上就好了,不需要特殊的構(gòu)造器或者set方法,依賴注入容器會(huì)提供你所需的依賴。但是Field注入會(huì)帶來2個(gè)問題:

當(dāng)注入的對(duì)象依賴其他對(duì)象,而被依賴的對(duì)象沒被創(chuàng)建的話就會(huì)出現(xiàn)空指針異常。 這樣的類沒辦法在容器之外被重用,也不能期望反射提供其所需的依賴。

詳細(xì)原因大家可以去這篇文章查看:http://olivergierke.de/2013/11/why-field-injection-is-evil/

構(gòu)造器注入 VS Setter注入

Setter應(yīng)該被用來注入可變的依賴。當(dāng)沒有提供依賴時(shí),這個(gè)類也應(yīng)該能夠運(yùn)轉(zhuǎn)。當(dāng)實(shí)例化對(duì)象后,這些依賴也能隨時(shí)改變。其實(shí)也視情況而變,有時(shí),一個(gè)不變的對(duì)象是理想狀態(tài)。有時(shí),最好是能在運(yùn)行期間改變對(duì)象的屬性。

構(gòu)造器注入對(duì)象需要依賴的對(duì)象初始化后才能正常運(yùn)轉(zhuǎn),通過構(gòu)造器提供這些依賴就能保證對(duì)象初始化后就能被使用。使用構(gòu)造器注入的一個(gè)可能的影響就是循環(huán)依賴。

怎么解決

我們可以使用Lombok提供的注解 @RequiredArgsConstructor 來解決這兩個(gè)問題(Lombok這個(gè)大家項(xiàng)目都會(huì)使用吧)

@Service@Log4j2@RequiredArgsConstructor(onConstructor = @__(@Autowired))public class ProductServiceImpl implements ProductService { private final ProductMapper productMapper;...}

這里必須使用final修飾符來修飾注入的Service或Mapper首先我們看看編譯后的類是什么樣

Intellij IDEA如何去掉@Autowired 注入警告的方法

編譯完成后變成了使用構(gòu)造器進(jìn)行注入

認(rèn)識(shí)@RequiredArgsConstructor

Lombok官方給出的解釋是: Generates constructor that takes one argument per final / non-null field. 所以它會(huì)為final和nonnull的屬性作為參數(shù)產(chǎn)生一個(gè)構(gòu)造函數(shù)。

而上面我們講了Spring推薦使用Setter或構(gòu)造器注入,那么@RequiredArgsConstructor剛好可以完成這件事,而且還簡(jiǎn)化了你的代碼,何樂而不為是不是?

到此這篇關(guān)于Intellij IDEA如何去掉@Autowired 注入警告的方法的文章就介紹到這了,更多相關(guān)IDEA去掉@Autowired 注入警告內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: IDEA
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品国产精品久久一区免费式| 午夜久久黄色| 国产综合视频| 亚洲一区欧美二区| 国产精品一区二区精品| 六月丁香综合| 中文字幕高清在线播放| 丝袜脚交一区二区| 日韩影院二区| 蜜桃伊人久久| 麻豆精品视频在线观看免费| 日韩精品中文字幕第1页| 国产精品成人自拍| 高清av一区| 首页亚洲欧美制服丝腿| 欧美天堂一区二区| 亚洲精品123区| 久久国产欧美| 日韩成人一级| 欧美在线资源| 香蕉精品久久| 久久久久九九精品影院| 亚洲乱亚洲高清| 久久国产精品久久w女人spa| 久久中文欧美| 少妇高潮一区二区三区99| 欧美搞黄网站| 91精品在线观看国产| 欧美极品一区二区三区| 国产精品一区二区三区av | 亚洲香蕉久久| 欧美aa在线观看| sm久久捆绑调教精品一区| 麻豆久久久久久久| 国产欧美午夜| 日韩国产高清在线| 九色精品91| 亚洲经典在线| 九一成人免费视频| 免费在线观看日韩欧美| 日韩精品影视| 老鸭窝亚洲一区二区三区| 欧美一区自拍| 国产高清不卡| 日韩精品一级二级| 久久av导航| 麻豆国产精品视频| 日韩精品一卡| 中文字幕一区二区三区四区久久| 青青草国产精品亚洲专区无| 中文一区一区三区高中清不卡免费| 国产视频一区三区| 免费在线观看一区| 99国产精品私拍| 久久97视频| 久久亚洲风情| 老牛影视精品| 最新国产精品| 国产资源在线观看入口av| 蜜臀va亚洲va欧美va天堂| 麻豆国产欧美日韩综合精品二区| 久久高清免费| 日韩一区精品| 日韩伦理福利| 91成人精品观看| 欧美福利一区| 国产精品久久久久久久久久齐齐 | 精品欠久久久中文字幕加勒比| 91精品蜜臀一区二区三区在线| 老司机精品久久| 美女在线视频一区| 中文字幕av一区二区三区四区| 欧美不卡高清一区二区三区| 国产日产精品_国产精品毛片 | 日韩不卡免费高清视频| 日韩一区精品字幕| 中文字幕在线视频网站| 日本不卡视频一二三区| 激情欧美一区二区三区| 免费看久久久| 亚洲一二av| 亚洲电影在线一区二区三区| 麻豆国产91在线播放| 最新亚洲国产| 亚洲视频www| 美女一区网站| 国产欧美在线| 蜜臀av一区二区三区| 91精品一区国产高清在线gif| 国产精品一区二区美女视频免费看 | 国产亚洲精品自拍| 日韩国产一区二区| 久久精品国产一区二区| 91av一区| 久久国产福利| 婷婷激情久久| 亚洲综合在线电影| 免费看久久久| 久久精品超碰| 免费在线观看一区二区三区| 国产成人精品亚洲日本在线观看| 麻豆久久一区| 国产精品久久久久77777丨| 日本成人精品| 中文无码久久精品| 九九久久婷婷| 欧美午夜精彩| 夜鲁夜鲁夜鲁视频在线播放| 精品视频高潮| 欧美精品二区| 国产精品分类| 日韩av影院| 日欧美一区二区| 蜜臀va亚洲va欧美va天堂| 极品裸体白嫩激情啪啪国产精品| 波多野结衣久久精品| 日本激情一区| 中文字幕成在线观看| 日韩在线视频精品| 日韩精品dvd| 精精国产xxxx视频在线野外| 日韩欧美午夜| 久久久成人网| 久久一级电影| 黄色成人精品网站| 国产亚洲毛片| 国产精品毛片| 免费一区二区视频| 亚洲视频二区| 亚洲欧美日本日韩| 丝袜脚交一区二区| 亚洲精品三级| 中文字幕成人| 青青草国产精品亚洲专区无| 青草久久视频| 国产精品地址| 精品国产一区二区三区性色av| 久久精品九色| 欧洲一区二区三区精品| 欧美一区二区三区激情视频| 91久久亚洲| 深夜福利一区| 欧美日韩夜夜| 国产aⅴ精品一区二区四区| 国产传媒av在线| 神马午夜久久| 午夜在线观看免费一区| 一级成人国产| 欧美中文一区| 麻豆国产欧美一区二区三区| 国产一区2区在线观看| 成人精品中文字幕| 亚洲免费激情| 久久国产日韩欧美精品| а√天堂8资源中文在线| 精品一区毛片| 视频精品一区| 精品国产乱码久久久| 久久高清免费| 在线精品亚洲| 国产精品久久久亚洲一区| 国产在线观看www| 黄色成人精品网站| 777久久精品| 综合日韩av| 日韩中文字幕亚洲一区二区va在线 | 日韩激情啪啪| 成人在线视频中文字幕| 亚洲精品99| 国产精品亚洲欧美| 激情综合网址| 欧美有码在线| 久久久影院免费| 日韩精品视频网站| 亚洲风情在线资源| 日韩精品一区二区三区免费视频| 久草免费在线视频| 蜜臀久久99精品久久久画质超高清| 国产精品99精品一区二区三区∴| 亚洲网站视频| 国产乱子精品一区二区在线观看 | 精品欧美一区二区三区在线观看| 国产日韩专区| 久久精品理论片| 美国三级日本三级久久99| 国产精品原创| 69堂精品视频在线播放| 欧美日韩国产高清电影| 国产精品a久久久久| 免费欧美日韩| 六月婷婷综合| 日本aⅴ亚洲精品中文乱码| 久久久噜噜噜| 国产精品天堂蜜av在线播放| 黄色免费成人| 吉吉日韩欧美| 国产精区一区二区| 91久久黄色| 97精品国产福利一区二区三区| 亚洲精品字幕|