Spring 学习之路(二): Spring IOC(DC) 的初步了解

Spring最重要的功能之一: IOC(DI)
  • IOC(Inversion of Control):其思想是反转资源获取的方向. 传统的资源查找方式要求组件向容器发起请求查找资源. 作为回应, 容器适时的返回资源. 而应用了 IOC 之后, 则是容器主动地将资源推送给它所管理的组件, 组件所要做的仅是选择一种合适的方式来接受资源. 这种行为也被称为查找的被动形式

  • DI(Dependency Injection) — IOC 的另一种表述方式:即组件以一些预先定义好的方式(例如: setter 方法)接受来自如容器的资源注入. 相对于 IOC 而言,这种表述更直接

通过一张图来简单解释Spring中的IOC

mark

  • 个人见解:以前当我们创建一个javaBean并且需要使用它的时候,通常是需要手工的对其进行初始化,然后调用这个对象的属性和方法,IOC容器的存在,使得我们从繁琐的创建过程中脱离出来,将javaBean或者其他组件的控制权交给了Spring,我们不需要亲自去创建各种需要的组件,只要告诉spring,我们需要什么,那么spring就自动的为我们提供什么

  • 举例说明:我们以前买菜都是亲自提着菜篮子去菜市场买菜,突然有一天,菜市场说不需要我们再跑去菜市场了,而是由菜市场亲自为我们送菜,只需要把菜篮子放在家门口,告诉菜市场我们需要一个白菜,那么白菜就会被自动被填充进菜篮子,大大方便我们后续的做菜(开发)流程

IOC发展历程(以业务层为例)
  1. 接口和实现类:业务层需要一个美女(接口),得自己提供一个柳岩或者佟丽娅的实例

  2. 工厂模式:业务层不需要关注实例到底怎么生成的,只需要向工厂需求一个美女,工厂自动给我们提供一个柳岩或者迪丽热巴

  3. IOC(反转控制):业务层需要一个美女,我们不用再写工厂类,直接从IOC容器中已经创建好的实例取就行了,IOC帮我们自动完成业务层属性到IOC容器实例的引用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值