Spring使用@Autowired為抽象父類注入依賴代碼實例
這篇文章主要介紹了Spring使用@Autowired為抽象父類注入依賴代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
有時候為了管理或者避免不一致性,希望具體服務(wù)統(tǒng)一繼承抽象父類,同時使用@Autowired為抽象父類注入依賴。搜了了網(wǎng)上,有些解決方法實現(xiàn)實在不敢恭維,靠子類去注入依賴,那還有什么意義,如下:
父類:
public abstract class BaseCar {
Settings settings;
}
@Component
public class SportsCar extends BaseCar{
//Autowired修飾方法時,根據(jù)方法參數(shù)類型判斷實例化哪個類
@Autowired
public void haha(Settings settings){
super.settings=settings;//父類屬性注入
}
public void print(){
System.out.print(settings.getSpeed());
}
}
這還叫自動???
經(jīng)仔細研究與測試,只要父類要注入的屬性是protected保護級別即可,如下:
public abstract class BusinessService {
@Lazy
@Autowired
protected RedisUtil redisUtil;
Logger logger = LoggerFactory.getLogger(this.getClass());
}
子類繼承后就可以直接使用redisUtil了,不會出現(xiàn)未注入的情況。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java實現(xiàn)將數(shù)字轉(zhuǎn)換成人民幣大寫
前面給大家介紹過使用javascript,php,c#,python等語言實現(xiàn)人民幣大寫格式化,這篇文章主要介紹了java實現(xiàn)將數(shù)字轉(zhuǎn)換成人民幣大寫的代碼,非常的簡單實用,分享給大家,需要的朋友可以參考下2015-04-04
Java 輕松實現(xiàn)二維數(shù)組與稀疏數(shù)組互轉(zhuǎn)
在某些應(yīng)用場景中需要大量的二維數(shù)組來進行數(shù)據(jù)存儲,但是二維數(shù)組中卻有著大量的無用的位置占據(jù)著內(nèi)存空間,稀疏數(shù)組就是為了優(yōu)化二維數(shù)組,節(jié)省內(nèi)存空間2022-04-04
Spring Mvc下實現(xiàn)以文件流方式下載文件的方法示例
這篇文章主要介紹了Spring Mvc下實現(xiàn)以文件流方式下載文件的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-05-05
Spring整合WebSocket應(yīng)用示例(上)
以下教程是小編在參與開發(fā)公司的一個crm系統(tǒng),整理些相關(guān)資料,在該系統(tǒng)中有很多消息推送功能,在其中用到了websocket技術(shù)。下面小編整理分享到腳本之家平臺供大家參考2016-04-04

