1.反转控制
1.反转控制(IOC Inverse of Control):在这个概念中,是反转重要还是控制重要?
我们需要首先知道什么是控制,然后才能在此基础上理解控制怎么翻转。
2.控制:对于成员变量赋值的控制权。
3.没有使用Spring之前,我们对成员变量的赋值在代码中完成的。有代码来控制对成员变量的赋值,这种方式是存在耦合的。
4.有了Spring之后,对成员变量赋值的控制权交给了Spring的工厂结合配置文件来控制的。控制权发生了转移!
5.将对成员变量赋值的控制权从代码翻转到了配置文件+Spring工厂:实现了解耦合,以后直接在配置文件中注入属性值即可。
好处:解耦合
底层实现:工厂设计模式,反射创建对象。
2.依赖注入
1.Dependency Injection:是Spring的一种编程方式,要自己体会,后续慢慢融入到自己的开发过程中。
2.注入:通过Spring的工厂及配置文件,为对象(bean,组件)的成员变量赋值
3.如果发现需要依赖某个类,就可以将其作为成员变量,通过配置文件+Spring工厂注入进来。
4.好处:解耦合。