摘要:
五Spring-AOP--6AOP调用逻辑源码分析 5.6.2 AOP调用逻辑 当被代理类的被AOP增强的方法执行时,会调用invoke。 以JdkDynamicAopProxy为例分析,其本身是InvocationHandler,方法调用的处理器,因此代理方法调用时,会调用invoke方法,实现拦 阅读全文
摘要:
五Spring-AOP--5AOP初始化源码分析 5.6 AOP源码分析 5.6.1 AOP初始化 AOP入口位置,在初始化方法中: TAG0.1 AbstractAutowireCapableBeanFactory.initializeBean() protected Object initial 阅读全文
摘要:
五Spring-AOP--4AOP拦截器链构建 5.5.5.1 AdvisorChainFactory 通过该类获取作用在beanclass和method上的拦截器链chain。 public interface AdvisorChainFactory { //确定给定的advisorChain的c 阅读全文
摘要:
五Spring-AOP--3AOP动态代理涉及的类 5.5 Spring AOP动态代理涉及的类 5.5.1 ProxyConfig 用于创建代理的配置的父类,以确保所有代理创建者具有一致的属性 public class ProxyConfig implements Serializable { / 阅读全文
摘要:
五Spring-AOP--2AOP重要组件类 5.4 AOP重要组件类 5.4.1 Advisor(切面) 把pointcut和advice连接起来(可由Spring去完成,我们都交给容器管理就行,当然,你也可以手动完成)Spring的Advisor是Pointcut和Advice的配置器,它是将A 阅读全文
摘要:
五Spring-AOP--1基础概念 AOP:面向方面编程。面向方面的编程需要把程序逻辑分解成不同的部分称为所谓的关注点。跨一个应用程序的多个点的功能被称为**横切关注点(把公共逻辑抽离),这些横切关注点在概念上独立于应用程序的业务逻辑。有各种各样的常见的很好的方面的例子,如日志记录、审计、声明式事 阅读全文
摘要:
四Spring框架-循环依赖及缓存的解决 4.1 spring解决循环依赖以及缓存问题 spring创建和实例化bean的过程的环节是比较多并且包装比较深的,那么如果每次getBean时都需要走这么多环节的话,那么不但会产生很多内存对象和计算逻辑,而且更重要的是无法解决对象在一些场景中的依赖问题,尤 阅读全文
摘要:
三Spring-ioc容器--4依赖注入及初始化源码分析 属性赋值(依赖注入) DCB4.2 autowireByName/Type 这里是xml配置里的自动装配autowiring。配置bean后,对类内属性byType或者byName等。 /** xml配置的bean的autowiring自动装 阅读全文
摘要:
三Spring-ioc容器--3Bean实例化源码分析 3.3.2 Bean实例化过程 在整个bean实例化的过程中,spring主要干了以下几件大事: 1.bean的实例化过程算法;2.IOC依赖注入;3.注解支撑;4.系列BeanPostProcessors的接口执行;5.AOP动态代理构建; 阅读全文
摘要:
三Spring-ioc容器--2解析、扫描、注册源码分析 3.3.1.2.1 默认bean解析 DefaultBeanDefinitionDocumentReader.parseDefaultElement(Element ele, BeanDefinitionParserDelegate dele 阅读全文
摘要:
三Spring-ioc容器--1容器加载源码分析 三Spring-ioc容器--1容器加载源码分析 3.1 web与非web项目ioc容器创建 3.1.1 spring容器的概念梳理 容器:是spring框架实现功能的核心,负责对象的创建和管理,负责对象的整个生命周期的管理——创建、装配、销毁。 I 阅读全文
摘要:
二Spring框架--3容器类和aware接口 2.1 BeanFactory与FactoryBean (1)beanfactory 是接口,提供了IOC容器最基本的形式,给具体IOC容器的实现提供了规范。是一个工厂类,负责生产、管理bean依赖的工厂类(实例化、定位、配置应用程序中的对象及建立对象 阅读全文
摘要:
二Spring框架--2spring.handlers解析标签的原理 2.17 NamespaceHandlerResolver public interface NamespaceHandlerResolver { /** * Resolve the namespace URI and retur 阅读全文