Spring核心概念讲解(IoC、DI、AOP)

控制反转(IoC)

IoC设计思想

IoC是一种设计思想,用来解决类与类之间的耦合问题。IoC意味着你将设计好的对象交给容器,而不是传统的你在对象内部直接创建。这样可以用来降低计算机代码之间的耦合度,这种设计思想最常见实现方式是依赖注入(DI),还有一种方式叫做以来查找(Dependency Lookup)。

对于为什么IoC能够降低代码耦合性,可以查看我的另一篇博客

IoC容器及其功能

管理所有JavaBean的容器叫做IoC容器,它可以管理所有轻量级的JavaBean组件。提供的底层服务包括:

  1. JavaBean生命周期管理
  2. JavaBean配置和组装服务
  3. AOP支持
  4. 以及建立在AOP基础上的声明式事务服务等。

AOP

Spring 框架的一个关键组件是面向方面的编程(AOP)框架,即面向切面编程。
AOP是一种编程方式,讲解AOP之前我们可以先回顾一下我们熟悉的OOP(面向对象编程),OOP的主要功能是数据的封装、继承、多态,OOP比较封闭,比如在很多方法中存在的安全检查、日志记录等功能都是大量重复代码,可是如果采用抽象的手段将这些抽象成一个工具类,仍需要调用工具类,增加了代码之间的耦合。这时AOP就有用武之地了。

AOP的做法是采用非入侵式代码。也即不用修改原来的代码,只需要添加代码,然后告诉Spring,我需要在调用某个方法之前(后或者前后),执行我新增的代码即可。

参考文献

  1. IOC的理解与解释
  2. IOC的概念与作用
  3. 反射机制的理解
  4. 廖雪峰-IoC容器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tinpo_123

感谢给小张填杯java~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值