IOC(控制反转:Inverse of Control)是Spring的内核,AOP,声明式事务等功能都建立在该功能之上,它涉及到代码解耦,设计模式,代码优化等问题的考虑。
控制反转即是某一接口的具体实现类的选择控制权从调用类中移除,转交给第三方裁决。
依赖注入DI(Dependency Injection): 将调用类对接口的实现类的依赖关系由第三方注入,以移除调用类对接口实现类的依赖
属性注入可以有选择地通过Setter方法完成调用类所需依赖的注入,更加灵活方便。
控制反转spring框架通过一个配置文件实现控制反转,在容器启动时根据配置文件的描述信息,自动实例化Bean并完成依赖关系的建立,从容器中即可返回准备就绪的Bean实例,以待以后使用。Spring之所以有这样的能力,主要归功于java语言本身的类反射功能,反射机制简单的说就是我们利用编程的方式实现类的实例化
控制反转-BeanFactory
BeanFactory(Bean工厂)
spring 的主要特性。