spring的依赖注入和工作原理

1、设置注入
IoC容器使用setter方法来注入被依赖的实例
2、构造注入
构造实例,完成依赖实例的初始化。
-->
创建实例时机不同
设置注入,先通过无参构造器创建一个调用者实例,在调用对应的setter方法注入依赖关系。
构造注入,直接调用有参构造方法,调用者创建完,也完成了依赖关系的注入。
优缺点:
设置注入,JavaBean相似,易理解,构造注入,臃肿,难阅读,性能低
构造注入,决定依赖关系的先后顺序,无需担心后续代码对依赖关系产生破坏,符合高内聚原则
3、工作原理

        Spring 的IOC 动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的类反射,反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml  Spring的配置文件来动态的创建对象,和调用对象里的方法的 。 

       Spring还有一个核心就是AOP,这个就是面向切面编程(类似汉堡),可以为某一类对象 进行监督和控制(也就是在调用这类对象的具体方法的前后去调用你指定的模块)从而达到对一个模块扩充的功能。这些都是通过 配置类达到的。 

       Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明管理的(Spring根据这些配置,内部通过反射去动态的组装对象)
        要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。 

       Spring里用的最经典的一个设计模式就是:模板方法模式。

       通俗的讲你也可以吧Spring当做一个大包裹,里面可以new对象,可以整合Hibernate、Struts2等框架的配置文件。

      

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值