【Spring】Spring DI(依赖注入)详解——构造器注入与Setter注入——Setter注入的实现方式

依赖注入(Dependency Injection,DI)是实现松耦合设计的重要手段。DI使得对象的创建与其依赖的对象分离,从而提高了代码的可维护性、可测试性和灵活性。在Spring框架中,DI主要通过两种方式实现:构造器注入和Setter注入。 比如,你要给孩子买玩具。你可以选择直接去商店购买玩具(直接创建依赖),这可能会导致你每次都要花时间和精力去选择玩具。或者,你可以让孩子告诉你他们想要什么(依赖注入),然后你再去商店购买。这样,你就能根据孩子的需求灵活选择,而不是每次都要自己决定。

在实际应用中,Setter注入常用于那些依赖是可选的场景,或者在对象创建后可能会改变的依赖。理解Setter注入的原理和实现方式,将帮助我们设计更灵活的应用程序。

一、依赖注入的概念

依赖注入是控制反转(Inversion of Control,IoC)的一种实现方式。通过依赖注入,Spring容器负责创建对象并注入其依赖,而不是让对象自己管理依赖。

1. Setter注入

Setter注入是通过公共的Setter方法来设置依赖的方式。在对象创建后,可以通过Setter方法逐一设置依赖。

优点

  • 依赖可以选择性注入,不必在构造时提供所有依赖。

  • 适合那些依赖是可选的场景。

缺点

  • 可能导致对象在未完全构建时被使用,增加了出错的可能性。

二、Setter注入的实现方式

下面我们通过具体示例来演示Setter注入的实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值