Spring IOC、AOP

IOC

概念

控制反转,将一个类实例化的对象交给Spring容器管理

public class A {

    // 常规控制, 由A来控制B的实例化
    private B b1 = new B();
    
    // 控制反转,bean的控制权交给Spring容器
    @Autowired
    private B b2 ;
    
}

工作流程:

1、准备ApplicationContext上下文环境,用BeanFactory工厂实现;
2、扫描XML文件和注解,生成Bean的定义,也就是BeanDefinition对象,Bean的名字、依赖关系、属性等信息;
3、基于BeanDefinition生成Bean,先实例化,然后依赖注入;
4、将生成的Bean放入Spring容器;

AOP

概念

面向切面编程,是一种编程思想,通过切面来实现对目标类的增强

原理

使用动态代理实现(当切入接口时,使用JDK原生动态代理;当切入普通方法时,使用cglib动态代理)

应用

1、记录日志(Log4j,Logbak)
2、事务管理 (调用方法前开启事务, 调用方法后提交关闭事务 )

# Java  Spring 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×