一、IOC
1.控制反转(Inversion of Controller)
2.控制:对实体类的创建和赋值的操作。
不使用spring控制反转的时候,程序员要进行对象的创建和赋值都要进行以下操作
A a = new A();
B b = new B();
a.c = 'c';
b.c = 'c';
程序员手动编写代码进行控制类的生成和数据赋值,不仅反锁会提高耦合程度。
3.反转:从程序员手动进行new Object()到使用bean注入IOC容器,并通过spring控制容器进行实体类创建和赋值,完成反转
@Component
public class A{}
@Component
public class B{}
在对应类前面加入@Component注解,以及从属于他的注解:
- @Service
- @Controller
- @Mapper
都会在SpringApplication启动类启动后,componentScan都会扫描@Component注解下的类,进行Bean定义,在使用的时候进行Spring创建类、操作类值的赋值操作。
这叫做控制反转