AUTOWIRING通过属性,setter和构造函数的区别是什么?
创始人
2024-11-12 16:30:33
0

在Spring框架中,可以使用三种不同的方式实现依赖注入的自动连接(AUTOWIRING)。这三种方式分别是属性注入(By Attribute)、Setter注入(By Setter)、构造函数注入(By Constructor)。

属性注入(By Attribute):使用@Autowired注释来自动将实例化类的属性附加到Spring容器中定义的bean。下面的示例演示了通过属性注入将CustomerService的customerDao属性连接到CustomerDaoImpl bean。

@Service
public class CustomerService {
   @Autowired
   private CustomerDao customerDao; 
}

Setter注入(By Setter):使用@Autowired注释将依赖项注入到setter方法中。下面的示例演示如何通过setter注入将CustomerService的customerDao属性连接到CustomerDaoImpl bean。

@Service
public class CustomerService {
   private CustomerDao customerDao;
   
   @Autowired
   public void setCustomerDao(CustomerDao customerDao) {
      this.customerDao = customerDao;
   }
}

构造函数注入(By Constructor):使用@Autowired注释将构造函数的参数注入实现类的实例化。下面的示例演示了如何通过构造函数注入将CustomerService的customerDao属性连接到CustomerDaoImpl bean。

@Service
public class CustomerService {
   private CustomerDao customerDao;

   @Autowired
   public CustomerService(CustomerDao customerDao) {
      this.customerDao = customerDao;
   }
}

总的来说,这三种方式的主要区别在于注入依赖项的时间和方式。属性注入最简单的方式,而构造函数注入则是最常见的方式,因为它够简单且明确。Setter注入在某些情况下也是一种合理的方式,例如当必须注入多个依赖项时。

相关内容

热门资讯

7分钟辅助!wepoker辅助... 7分钟辅助!wepoker辅助分析器,菠萝辅助器免费版的特点,绝活教程(果真有挂)1)菠萝辅助器免费...
一分钟辅助!aapoker怎么... 一分钟辅助!aapoker怎么开辅助器,xpoker辅助控制,机巧教程(有挂细节)1、aapoker...
第四分钟辅助!we-poker... 第四分钟辅助!we-poker靠谱吗,wpk辅助是什么,教材教程(了解有挂)亲,关键说明,wpk辅助...
九分钟辅助!德州透视竞技联盟,... 九分钟辅助!德州透视竞技联盟,wepoker免费脚本咨询,窍门教程(发现有挂)1、超多福利:超高返利...
第9分钟辅助!wpk有辅助器吗... 第9分钟辅助!wpk有辅助器吗,wpk辅助器是真的吗,演示教程(有挂技巧)1、每一步都需要思考,不同...
第五分钟辅助!wepoker手... 第五分钟辅助!wepoker手机版透视脚本,aapoker辅助工具安全吗,教材教程(有挂分析)1、许...
第三分钟辅助!约局吧app有挂... 第三分钟辅助!约局吧app有挂吗,htx矩阵wepoker辅助,总结教程(有挂秘籍);1、用户打开应...
第三分钟辅助!wepoker透... 第三分钟辅助!wepoker透视苹果系统,wepoker有没有辅助,要领教程(有挂分析)1、游戏颠覆...
第1分钟辅助!拱趴大菠萝自动计... 第1分钟辅助!拱趴大菠萝自动计算机器人,德普之星辅助工具如何打开,阶段教程(有挂头条)1、玩家可以在...
八分钟辅助!德州来玩辅助器,w... 八分钟辅助!德州来玩辅助器,wepoker如何设置透视,秘籍教程(详细教程)1、wepoker如何设...