Spring(七):IOC&DI

什么是IOC?

IOC(Inversion of Control):其思想是反转资源获取的方向。

传统的资源查找方式要求组件向容器发起请求查找资源,作为回应,容器适时的返回资源。

而应用了IOC之后,则是容器主动地将资源推送给它所管理的组件,组件所要做的仅是选择一种合适的方式来接受资源。这种行为也被成为查找的被动形式。

什么是DI?

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

举例:对比使用IOC和不使用IOC实现需求“从容器中获取B对象,并使B对象的a属性被赋值为容器中A对象的引用。

IOC发展历史由来

需求:生成PDF或者HTML格式的报表。

IOC前生------分离接口与实现

IOC前生------采用工厂设计模式

IOC------采用反转控制

猜你喜欢

转载自www.cnblogs.com/yy3b2007com/p/9029520.html