@Inject注解和@Named注解注入失敗
問題發(fā)現(xiàn)
在學(xué)習(xí)spring框架的時候,官方介紹Spring支持JSR-330標(biāo)準注釋(依賴注入)。然后按照官網(wǎng)的方式去操作。
pom文件:
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
<version>2.0.1</version>
</dependency>示例代碼如下:
@Named
public class B{}
@Named
public class A{
@Inject
private B b;
public B getB() { return b; }
@Inject
public void setB(B b) { this.b = b; }
public static void main(String[] args) {
ApplicationContext applicationContext = new AnnotationConfigApplicationContext("com.example");
A bean = applicationContext.getBean(A.class);
System.out.println(bean.b);
/** Output:
* No qualifying bean of type 'com.example.A' available
*/
}
}
運行直接找不到bean,報錯。
問題解決
后面發(fā)現(xiàn)官網(wǎng)介紹的版本好像不一樣,難道是這個原因(不是吧?。。?,然后把pom文件版本換低點。
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
<version>1.0</version>
</dependency>
項目都報紅了,發(fā)現(xiàn)原先的包名報錯了,于是重新引入才發(fā)現(xiàn)問題。
- 2.0.1版本的包名對應(yīng)jakarta.inject.Named;
- 1.0版本的包名對應(yīng)javax.inject.Inject;
至此問題解決,運行一下:
@Named
public class B{}
@Named
public class A{
@Inject
private B b;
public static void main(String[] args) {
ApplicationContext applicationContext = new AnnotationConfigApplicationContext("com.example");
A bean = applicationContext.getBean(A.class);
System.out.println(bean.b);
/** Output:
* com.example.B@9225652
*/
}
}
問題解決。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java網(wǎng)絡(luò)編程基礎(chǔ)用法詳解
網(wǎng)絡(luò)編程是指編寫運行在多個設(shè)備(計算機)的程序,這些設(shè)備都通過網(wǎng)絡(luò)連接起來,本文將帶大家詳細了解Java的網(wǎng)絡(luò)編程,文中有相關(guān)的代碼示例,需要的朋友可以參考下2023-05-05
SpringMVC + jquery.uploadify實現(xiàn)上傳文件功能
文件上傳是很多項目都會使用到的功能,SpringMVC當(dāng)然也提供了這個功能。不過小編不建議在項目中通過form表單來提交文件上傳,這樣做的局限性很大。下面這篇文章主要介紹了利用SpringMVC + jquery.uploadify實現(xiàn)上傳文件功能的相關(guān)資料,需要的朋友可以參考下。2017-06-06
SpringBoot實現(xiàn)不同接口指定上傳文件大小的具體步驟
這篇文章主要介紹了在Spring Boot中通過自定義注解、AOP攔截和配置文件實現(xiàn)不同接口上傳文件大小限制的方法,強調(diào)需設(shè)置全局閾值遠大于接口自定義值,確保驗證邏輯正確執(zhí)行,需要的朋友可以參考下2025-08-08
Java NumberFormat格式化float類型的bug
今天小編就為大家分享一篇關(guān)于Java NumberFormat格式化float類型的bug,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-10-10

