Spring事务@Transactional的创建和执行过程

@Transactional注解的运行原理首先生成事务类的动态代理对象,在执行动态代理事务类的事务方法时,会执行事务拦截器TransactionInterceptor;接着事务核心组件TransactionAspectSupport开始执行事务方法主流程...

Read More


Spring AOP 动态代理的执行过程

JDK代理调用代理类$Proxy的方法时,会调用super.h.invoke方法,该方法实际调用的是JdkDynamicAopProxy#invoke方法;判断当前方法是equals方法且实现类未对equals方法进行重新,如果是,就调用JdkDynam...

Read More


Spring AOP动态代理的创建过程

从IOC容器中获取bean;调用bean后置处理器AbstractAutoProxyCreator的postProcessBeforeInstantiation()方法;判断是否指定targetSource,如果指定了targetSource会跳过bea...

Read More


Spring Bean生命周期

Spring Bean生命周期调用 getBean(name) 方法来加载name对应的单例对象,这里只分析Spring的单例对象生命周期。转换并解析bean的名称,处理bean别名,获取到真正的bean名称;如果beanName是以&开头的,就...

Read More


ApplicationContext的初始化过程

ApplicationContext的初始化过程ClassPathXmlApplicationContextClassPathXmlApplication会接收一个applicationContext.xml(名称自定义)在类路径上描述spring be...

Read More