IOC,控制反转,以前是调用者实例化被调用者,现在就交给IOC容器,比如Spring,有容器来控制。
它包括依赖注入(DI)(在对象内部通过构造注入或set注入所依赖的对象)和依赖查找(Dependency Lookup)。
注入就是实例化类。
AOP,面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。以下方式都可以实现:1、xml文件配置方式2、注解的方式 。
比如对一些功能如“数据库事务处理”包装到一个注解里,在需要用到事务的地方,添加注解就可以,不用破坏原来代码(非侵入性)
Spring注入方式有4种:
- 根据属性注入也叫set方法注入
- 根据构造方法注入
- 根据工厂类注入
- 根据注解进行注入(推荐)
前三种都需要在Spring的XML配置文件里配置,后一种利用了Spring的AOP功能,只需要在需要注入的地方写注解(比如:@autowired)就行了,比较灵活。当然这些注解,Spring启动时候会自动扫描。