@Autowired注入service為null的問(wèn)題及解決方案
@Autowired注入service為null
今天在一個(gè)普通類(lèi)中注入service時(shí)出現(xiàn)了一個(gè)問(wèn)題,我用@Autowired注入的service為null。
最終我是通過(guò)以下方案解決
1.在類(lèi)上標(biāo)注該類(lèi)為組件也就是@Component
2.靜態(tài)初始化當(dāng)前類(lèi)
3.在初始化service的方法上加上注解@PostConstruct,這樣方法就會(huì)在Bean初始化之后被Spring容器執(zhí)行
4.調(diào)用時(shí)通過(guò)類(lèi)來(lái)調(diào)用
@Component
public class LogUtil {
@Autowired
private LogService logService;
private static LogUtil logUtil; // 靜態(tài)初使化當(dāng)前類(lèi)
public static void saveLog(String userName, String result) {
Log log = new Log(userName+"", result);
try {
logUtil.logService.add(log);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@PostConstruct
public void init() {
logUtil = this;
logUtil.logService = this.logService;
}
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Lombok注解之@SuperBuilder--解決無(wú)法builder父類(lèi)屬性問(wèn)題
這篇文章主要介紹了Lombok注解之@SuperBuilder--解決無(wú)法builder父類(lèi)屬性問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
Java基本知識(shí)點(diǎn)之變量和數(shù)據(jù)類(lèi)型
這篇文章主要給大家介紹了關(guān)于Java基本知識(shí)點(diǎn)之變量和數(shù)據(jù)類(lèi)型的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
SpringBoot生成License的實(shí)現(xiàn)示例
License指的是版權(quán)許可證,那么對(duì)于SpringBoot項(xiàng)目,如何增加License呢?本文就來(lái)介紹一下,感興趣的可以了解一下2021-06-06
mybatis-plus如何根據(jù)任意字段saveOrUpdateBatch
MyBatisPlus saveOrUpdateBatch默認(rèn)按主鍵判斷操作類(lèi)型,若需按其他唯一字段(如agentId、period、type組合)判斷,需在service層重寫(xiě)方法,通過(guò)predicate定義插入條件并結(jié)合consumer執(zhí)行更新邏輯,適用于批量和單條數(shù)據(jù)操作場(chǎng)景2025-09-09
spring boot activiti工作流的搭建與簡(jiǎn)單使用
這篇文章主要給大家介紹了關(guān)于spring boot activiti工作流的搭建與簡(jiǎn)單使用的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-08-08
Java實(shí)現(xiàn)Map集合二級(jí)聯(lián)動(dòng)示例
Java實(shí)現(xiàn)Map集合二級(jí)聯(lián)動(dòng)示例,需要的朋友可以參考下2014-03-03

