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;
}
相关推荐
Wang's Blog几秒前
Java 中间件之 RabbitMQ 快速入门: 异步通讯的优缺点
java·中间件·java-rabbitmq
Bazingga2 分钟前
Spring AI 还是 LangChain4j?我用同一套业务代码跑了一遍,答案出乎意料
后端
用户094248568032 分钟前
第31章:JVM字节码解释器与模板解释器源码路径
java·jvm
焦玉全2 分钟前
动态代理学习笔记:JDK 与 CGLIB 的完整代码流程
后端
子非鱼a6 分钟前
【WEB】EasySSTI
java·开发语言·前端
汝吾此便安好9 分钟前
Axum 中间件执行顺序
后端
m0_5873830017 分钟前
深圳 24 小时自助健身房系统软件开发实战指南与案例解析
java·spring boot·小程序·架构·需求分析
Nebula_g27 分钟前
JavaSE项目实践:红包雨-线程池/线程
java·开发语言
小羊没烦恼!28 分钟前
jQuery1.5的改进细节
java·服务器·开发语言·前端·c#
霸道流氓气质30 分钟前
Prompt 版本控制与 A/B 测试实战:语义版本管理、一致性哈希分流与 Thompson Sampling 的 Java 生产级实现
java·prompt·哈希算法