
Spring
源码解析
疾风丶Sao年
这个作者很懒,什么都没留下…
展开
-
Spring源码解析之AOP篇(四)----注册AnnotationAwareAspectJAutoProxyCreator的原因
摘要:上文解析了AnnotationAwareAspectJAutoProxyCreator的注册过程,但是我们却并没有分析注册它有何用?能在实现AOP功能的过程中起到什么作用,今天我就会详细分析!一.注册AnnotationAwareAspectJAutoProxyCreator的原因首先让我们先看下此类的继承和实现关系,我用的idea构建的。不难看出,此类间接实现了Bea...原创 2020-05-11 20:08:28 · 225 阅读 · 0 评论 -
Spring源码解析之AOP篇(三)----Spring开启AOP的两种方式
一.基于XML的方式在Spring的早些版本,流行的Xml的配置方式。只要在xml中配置对的标签以及属性,Spring就会帮我们解析。 <!--开启自动扫描--> <context:component-scan base-package="com.seaway.curatorframework"/> <!--开启自动代理-->...原创 2020-04-27 22:03:31 · 393 阅读 · 0 评论 -
Spring源码解析之AOP篇(二)----AOP名词术语解释
Spring AOP:Aspect-oriented Programming,即面向切面编程。在切面编程中,引入了一些新的概念,这在学习AOP之前,必须得弄清楚,且得明白它们之前的关联关系,否则在后面的源码学习中会比较绕。毕竟,弄清楚了他们各自的功能,我们就能很容易的带着问题逐个击破,接下来我逐个讲解。Aspect翻译过来,叫做切面。首先看一下Spring广官方是如何给出解释的。切面...原创 2020-04-27 16:34:09 · 267 阅读 · 0 评论 -
Spring源码解析之AOP篇(一)----代理模式详解
最近看了Spring中的AOP--面向切面编程,该功能极为强大,能帮我们实现服务调用性能监控,权限控制,日志增强,事务管理等功能,能在不改变原来业务代码的前提下,悄无声息的替我们动态织入,让我们能更加的专注业务的实现。当了解到这,我非常好奇,想一探究竟AOP到底是如何实现帮我们无声织入的。但是个人认为,经过一段时间的源码研读,AOP应该算是在Spring核心功能中最比较难懂得了,实现逻辑较为复杂...原创 2020-04-27 12:09:46 · 332 阅读 · 0 评论 -
Spring源码分析之单型模式Setter注入下的循环依赖
摘要:Spring中总共有三种循环依赖,原型模式的循环依赖,单例模式的构造器循环依赖,单例模式的Setter注入循环依赖。前面两种我已经写过了,在这里附上链接,有兴趣的可以去了解下,今天会将最后一种,也算是比较重要的一种。原型模式的循环依赖:https://blog.youkuaiyun.com/lkp_kapila/article/details/105344252单例模式的构造器循环依赖:h...原创 2020-04-08 19:37:53 · 1067 阅读 · 3 评论 -
spring源码解析之单例模式下的构造器循环依赖
单例模式下的构造器循环依赖单例模式下的构造器循环依赖和多例模式下的循环依赖大同小异。以下面的TestA,TestB为例。public class TestA { private TestB testB; public TestA(TestB testB) { this.testB = testB; } public TestB get...原创 2020-04-06 19:02:03 · 468 阅读 · 0 评论 -
spring源码解析之原型模式下的循环依赖
众所周知,Spring托管了我们对象的创建,销毁,管理着整个bean的生命周期。但是在对象的创建过程中,有一种特殊情况,存在可能两个bean之间互相引用,例如下面的TestA中引用了TestB,TestA中引用了TestA,即你中有我,我中有你。public class TestA { //引用了TestB private TestB testB; //省略get,...原创 2020-04-06 17:20:32 · 2475 阅读 · 5 评论 -
细说Spring自定义标签
Spring自定义标签总共可以分为以下几个步骤定义Bean 标签解析生成接收配置的POJO。 定义schema文件,定义自定义标签的attr属性 定义解析类parser,遇到自定义标签如何解析。 定义命名空间处理类namespaceSupport,遇到自定义的命名标签,能够路由到对应的解析类。 声明schema,写入spring.schema文件中 声明自定义标签的命名处理类name...原创 2020-03-22 15:29:55 · 325 阅读 · 0 评论