spring属性注入的不细心错误

属性注入问题

个人博客:www.zgtsky.top

同个的对象,在一个类中注入成功,在另一个类中注入为null

问题:在检测各个需要的类上已经打上注解后,出现了在一个类A1中注入B属性成功了,但在另一个类A2中注入B属性却失败了。

原因:A1和A2获取对象引用的方式不一样,A1是通过注解方式使用对象引用,A2是通过new方式使用对象引用。

举例

当我们使用A1类时,我们是通过注解导入的

java 复制代码
 @Resource
 private A1 a1;

void method(){

// 使用a1;

}

而在使用A2类时,却是用new的方式,这样就会导致A2中的属性B没有注入,原因就是这个new的A2不是Spring IOC容器管理的那个。所以,在使用A2时也是要进行属性注入的方式导入,而不是在一个方法中new一个。

错误的使用:

java 复制代码
void methed(){
  A2 a2 = new A2();//错误的
}

正确的使用:

java 复制代码
@Resource
A2 a2;

void method(){
  //使用a2;
}
相关推荐
小韩博1 分钟前
网络安全(Java语言)脚本 汇总(二)
java·安全·web安全
bobz9654 分钟前
ThanosRuler
后端
萤丰信息8 分钟前
技术赋能安全:智慧工地构建城市建设新防线
java·大数据·开发语言·人工智能·智慧城市·智慧工地
用户4822137167759 分钟前
C++——字符串常量、二维数组、函数与指针的深度应用(补)
后端
用户48221371677511 分钟前
C++——类型转换
后端
lichenyang45319 分钟前
mongoose(对象文档模型库)的使用
后端
用户48221371677521 分钟前
C++——继承进阶
后端
带刺的坐椅27 分钟前
Java MCP 的鉴权?好简单的啦
java·鉴权·mcp·solon-ai
Pocker_Spades_A30 分钟前
飞算JavaAI家庭记账系统:从收支记录到财务分析的全流程管理方案
java·开发语言
33255_40857_2805935 分钟前
掌握分页艺术:MyBatis与MyBatis-Plus实战指南(10年Java亲授)
java·mybatis