java - spring boot @Autowired
問題描述
如何在一個沒有注解的類中加入一個已經(jīng)注解的@Autowired?
classA 沒有添加xml也沒有注解到spring中
classB @Component 已經(jīng)加入注解
如何在classA 中用@Autowired 注解classB?
如果classA也 @Component了,classB可用,但是不注解就會報錯。
問題解答
回答1:做個SpringContextHolder
回答2:@Component 是spring的一個bean類型的注解,添加有這個注解之后才會將該bean由spring管理,如果不加這個注解的話,spring就無法識別這個類,所以就會報錯,如果加上這個注解之后spring就知道這兩個類是spring中的兩個bean,可以相互進行自動注入。 對spring的理解還不夠深刻,說的可能有問題,僅僅是個人見解
回答3:從 applicationContext 中用 service 名獲取。
回答4:@Autowired是表示注入, 要使用注入, 你的類必須交給spring管理, 意思就是你的class B必須是是一個spring的bean, class A也必須是一個spring的bean, 你報錯就是因為你的class A不是一個spring的bean, spring無法幫你注入class B.如果要在不是spring bean的class A中使用class B只能手動把class Bset進去.
相關(guān)文章:
1. javascript - nodejs實現(xiàn)異步時遇到的一個問題2. css3 - Typecho 后臺部分表單按鈕在 Chrome 下出現(xiàn)靈異動畫問題,求解決3. mysql - 面試題:如何把login_log表轉(zhuǎn)換成last_login表?4. java - 阿里的開發(fā)手冊中為什么禁用map來作為查詢的接受類?5. apache - 想把之前寫的單機版 windows 軟件改成網(wǎng)絡(luò)版,讓每個用戶可以注冊并登錄。類似 qq 的登陸,怎么架設(shè)服務(wù)器呢?6. javascript - 為什么嵌套的Promise不能按預(yù)期捕獲Exception?7. java - 關(guān)于i++的一個題目8. javascript - 編程,算法的問題9. java - HTTPS雙向認(rèn)證基礎(chǔ)上有無必要再進行加簽驗簽?10. myeclipse中修改了javaweb的web.xml文件,為什么有時候會自動重新部署生效,有時就不會自動呢?
