resource注入是单例吗
- 心理
- 关注:1.19W次
做个测试嘛背景:1、定义两个类分别是A和B,同时这两个类都定义为原型(即:scope=“prototype”)2、A中一个属性定义的为B类型,即:A实例的创建过程中是需要注入一个B实例到A中的3、spring使用的ASE版本,jdk为1.6.0_10测试方法及结果:1、在spring配置文件中配置A对B的引用,可发现在两次调用A的实例对象时,B也被创建了两次 (同预期的结果一样)2、不使用spring配置文件配置关联关系,而是在类A中使用@Resource的方式注入一个B实例对象,可发现在两次调用A的实例对象时,B只被创建创建了一次 (同预期结果不一致)3、使用@Autowired替换@Resource重复步骤2,可发现在两次调用A的实例对象时,B也被创建了两次 (同预期的结果一样)测试总结:通过上述的测试发现,如果定义的原型A中通过@Resource的方式注入一个定义为原型的B的时候,并没有按照原型的定义完成B的注入,而是使用的单例模式。
- 文章版权属于文章作者所有,转载请注明 https://rmnxw.com/zh/lvse/xinli/eq2jew.html