Spring 专题
文章平均质量分 74
spring技术分享
郭美冉
这个作者很懒,什么都没留下…
展开
-
9. Spring 源码解析之代理对象调用过程
代理对象调用过程代理对象的调用是通过反射的方式调用的(另外一种这里暂且不论),JdkDynamicAopProxy#invoke ,方法中先处理了是否要暴露代理对象的处理,如下:if (this.advised.exposeProxy) { // Make invocation available if necessary. oldProxy = AopContext.setCurrentProxy(proxy); setProxyContext = true;}static Object原创 2021-03-04 23:18:29 · 406 阅读 · 1 评论 -
8. Spring 源码解析之AOP代理对象创建过程
8. Spring 源码解析之AOP代理对象创建过程8.1 校验是否是被增强的bean8.1.1 获取通知和增强器8.1.2 创建代理对象8.2 提前暴露的代理对象8.3 代理对象创建过程图解创建代理对象过程有两个入口,AbstractAutoProxyCreator#getEarlyBeanReference 和 AbstractAutoProxyCreator#postProcessAfterInitialization ,两个调用的时机不通。通常情况下,是通过AbstractAutoProxyCr原创 2021-03-04 21:57:24 · 711 阅读 · 1 评论 -
7.Spring 源码解析之AOP获取增强器过程
7.Spring 源码解析之AOP解析切面过程1. Spring 注解之 @EnableAspectJAutoProxy2. Spring 切面解析过程2.1 查找候选的Spring Advisor2.2 查找候选的AspectJ Advisor1. Spring 注解之 @EnableAspectJAutoProxySpring 开启自动代理是通过 @EnableAspectJAutoProxy 来实现的,看看这个注解都有哪些功能,代码如下:@Target(ElementType.TYPE)@Re原创 2021-03-04 18:02:04 · 242 阅读 · 1 评论 -
6. Spring 源码解析之 IOC 图解
6 IOC过程图解bean定义解析按照扫描过程大致分为两个阶段,如下图所示6.1 IOC容器初始化初始化流程图图示:@ImportResource(“classpath:spring/applicationContext.xml”) IOC初始化,接着this.reader.loadBeanDefinitions(configClasses);进行分析6.2 Bean 生命周期...原创 2021-03-03 18:23:41 · 243 阅读 · 1 评论 -
5. Spring IOC 常见注解
5. Spring 源码解析之 bean 扫描过程1. Spring IOC 常见注解1. Spring IOC 常见注解@Configuration@Import(value = {H.class, K.class, TestImportSelector.class, TestBeanDefinitionRegister.class})@ComponentScan(basePackages = {"com.gmr.test"})@PropertySource(value = {"classpat原创 2021-03-03 10:24:47 · 121 阅读 · 1 评论 -
4. Spring bean 标签详解
Spring bean 标签详解1. 标签约束<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans原创 2021-03-02 20:15:11 · 546 阅读 · 0 评论 -
3. Spring Aop 标签详解
Spring Aop 标签详解<aop:config> <aop:aspect id="beforeAdviceBindingTests" ref="testAspect"> <aop:before method="oneIntArg" pointcut="execution(* setAge(int)) and args(age)"/> <aop:before method="on原创 2021-03-02 20:12:05 · 481 阅读 · 1 评论 -
1. Spring源码解析之IOC(上篇)
1. Spring 源码解析之IOC1. Spring 概述1.1 架构设计1.2 各个模块依赖关系2. 依赖注入和控制反转解析2.1 Spring IOC 体系结构2.1.1 BeanFactory2.1.2 BeanDefinition2.1.3 XmlBeanDefinitionReader2.2 IOC 容器初始化2.2.1 XmlBeanFactory2.2.2 ApplicationContext2.2.2.1 设置资源加载器和资源定位2.2.2.2 refresh 函数载入 Bean 定义2.原创 2021-03-02 14:46:36 · 197 阅读 · 0 评论 -
2. Spring源码解析之IOC(下篇)
2. Spring源码解析之IOC(下篇)2.3 IOC 容器的依赖注入2.3.1 依赖注入发生时间2.3.2 getBean 依赖注入2.3.2.1 参数为name2.3.2.2 参数为requiredType2.4 IOC 容器的高级特性2.4.1 lazy-init 属性实现预实例化2.4.1.1 refresh 函数载入 Bean 定义2.4.1.2 finishBeanFactoryInitialization 处理预实例化2.4.1.3 DefaultListableBeanFactory 对原创 2021-03-02 15:05:50 · 138 阅读 · 0 评论