Spring之IOC基本用法

声明:小弟最近正在学习spring下面内容是自己的一些理解,如果有不对的地方请及时留言告知,以免误导了后面的spring学习者,谢谢大家配合。
什么是spring:
Spring是轻量级开源框架,以IOC(控制反转)和AOP(面向切面编程)为内核。
Spring的出现代替了ejb的臃肿、低效、脱离现实

是什么:
简单点明:

IOC控制反转:从容器的角度来说的,就是创建实例的工作交给容器管理。

DI依赖注入:从需要实例化对象的角度来说是创建对象实例时,为这个对象注入 属性值或其它对象实例。

它们是spring核心思想的不同方面的描述分别站在了容器和对象的角度来说明同 一件事。
有什么用:

Spring的IOC容器降低了业务逻辑对象替换的复杂性,提高了组件之间的解耦。
依赖注入是一种优秀的解耦方式

如何用:
设值注入:
设值注入是指IOC容器使用成员变量的setter方法来注入被依赖的对象。,这 种方式被大量使用。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

构造注入:
通过构造方法来给对象注入值

这里写图片描述
这里写图片描述
两种注入方式的对比:
设值注入的优点:
1.在某些成员变量可选的情况下,多参数的构造器显得笨重
2.对于复杂的依赖关系,如果采用构造注入,会导致构造器过于臃肿,难以阅读
3.与传统的javabean写法更相似,程序开发人员更容易理解。,通过setter方式设定依 赖关系显得更加直接自然。
构造注入的优点:
1.构造注入可以在构造器中决定依赖关系的注入顺序,优先依赖的优先注入。
2.对于依赖关系无需变化的bean,构造器注入更有用处。因为没有setter方法,所有 的依赖关系全部在构造器内设定
3.依赖关系只能在构造器中设定,则只有组件的创建者才能改变组价的依赖关系。对组件的调用而言,组件内部的依赖关系更加透明,更符合高内聚的原则

建议采用设值注入为主,构造注入为辅的注入策略。对依赖关系无需变化的注入,尽量采用构造注入,而其他依赖关系的注入,则考虑采用设值注入

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值