Spring依赖注入的三种方式

更加简单地从Spring中取出Bean对象(超级重要)
将Bean对象更加简单地从Spring中取出来,有三种方式,分别为 属性注入, setter注入,构造方法注入

我们可以回忆一下之前是怎么拿到一个对象的.

最初我们在没有学Spring之前就是直接new一个对象

学了Spring之后呢... 我们先要创建一个Spring上下文对象(context),通过context.getBean()方法指定id,类型来从Spring中取出Bean对象..

到现在我们就可以使用更加简单地方式来从Spring中取出Bean对象了.

我们分别来讲一下属性注入,Setter注入,构造方法注入 并分析出三种方式的优缺点,以及Spring官方推荐我们使用哪种呢 ?

为什么要使用依赖注入
传统的代码,每个对象负责管理与自己需要依赖的对象,导致如果需要切换依赖对象的实现类时,需要修改多处地方。同时,过度耦合也使得对象难以进行单元测试。
依赖注入把对象的创造交给外部去管理,很好的解决了代码紧耦合(tight couple)的问题,是一种让代码实现松耦合(loose couple)的机制。
松耦合让代码更具灵活性,能更好地应对需求变动,以及方便单元测试。
为什么要使用Spring
使用Spring框架主要是为了简化Java开发(大多数框架都是为了简化开发),它帮我们封装好了很多完善的功能,而且Spring的生态圈也非常庞大。
基于XML的配置是Spring提供的最原始的依赖注入配置方式,从Spring诞生之时就有了,功能也是最完善的.
属性注入
首先我来代码演示一下怎么才是属性注入,代码层次上是怎么写的呢..

我们这里代码演示是 我们在UserController类里面要使用UserService类....

//和前端进行交互的第一层(主要验证前端传递过来的参数-->进行校验和验证==>相当于安检的作用)
@Controller
public class UserController {

    //我们这里假设要在UserController类里面使用UserService,前提是UserService已经存放到Spring中了(加了类注解了)

    @Autowired //使用一个AutoWired这样的一个注解---->自动装配的意思
    private UserService userService;//UserService成员属性

    public void sayHello(){
        System.out.println("do UserController!!!");
        userService.doUserService();//调用UserService的方法
    }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值