〇、AOP概念 Aspect:切面 给业务方法增加到功能,切面泛指交叉业务逻辑。上例中的事务处理、日志处理就可以理解为切面。常用的切面是通知(Advice)。实际就是对主业务逻辑的一种增强。 Pointcut:切入点 切入点指声明的一个或多个连接点的集合,通过切入点指定一组方法。被标记为 final 的方法是不能作为连接点与切入点的。因为最终的是不能被修改的,不能被增强的。 Advice:
原创 精选 2023-07-02 12:18:23
1837阅读
前言 我是子路,一个把Java当饭吃的人。 笔者之前在华南谷歌搬砖,在系统架构设计、分布式、微服务、高并发、高可用等技术架构具有丰富的实战经验。对市面上主流的开源框架源码——spring、nacos,springboot、JDK并发工具等等都有深入的研究。Spring是Java语言里面一个非常重要的框架,可以说任何一个学Java的人都必须要接触到Spring。这里笔者先给大
前言大家好,我是子路,一个靠Java吃饭的男人前两篇文章:从源码的角度来解读spring的循环引用(一)——生命周期源码深度解析spring的循环引用(二)——逐条解读代码 已经介绍完了循环依赖在Bean生命周期中的体现,以及对每一条代码做出了诠释。这篇文章将接着上面两篇文章,完成Spring当中的循环应用的讲解。正文我先给出这个方法的源码全貌;重点我用红色标记了,并且会在进行代码解析;黄色线下面
优秀的源码设计思想以及实现方式都是相通的,随着各种开源软件的发展,各家都会融合别家优秀之处;最后的结果就是所有的开源软件从设计上或者实现上都变得越来越相似.《spring源码深度解析》基于spring3.2版本编写.spring整体架构:(1) core container核心容器core模块是其他组件的基本核心;beans模块包含访问配置文件、创建和管理bean,提供IOC控制反转和DI依赖注入
IOC 是 spring 中最最最最核心的部分。IOC 即控制反转,就是说资源不由使用资源的双方管理,而由不使用资源的第三方(IOC容器)管理。对象不再由使用者来创建(比如 new)和管理。它主要有两个好处:资源集中管理,实现资源的可配置和易管理降低使用双方的依赖程度,也就是解耦IOC 容器的最顶层接口是 BeanFactory,也就是说,只要实现了&nbs
上一篇博客Spring源码学习--Spring配置文件解析BeanDefinitionDocumentReader
原创 2022-08-25 17:33:13
141阅读
〇、AOP概念 Aspect:切面 Pointcut:切入点 Advice:通知、增强 JoinP
原创 2023-07-30 07:45:12
153阅读
spring源码源码分析(一)mac版idea引入spring源码(二)spring的学习流程(三)spring源码分析【1】refresh()方法概览(AbstractApplicationContext抽象类里的refresh方法)(1)阅读源码进行debug调试的方法【2】通过一张思维导图说明refresh每个方法主要完成的事【3】spring工作流程图(四)spring源码设计架构,
Spring源码解析 -- 读取bean元数据spring源码解析 -- 构造beanspring源码解析 -- 注入属性spring源码解析 -- Spring ContextSpring源码解析 -- AOP原理(1)Spring源码解析 -- AOP原理(2)Spring源码解析 -- SpringMvc原理源码分析基于spring 4.3.x本文通过阅读Spring MVC的源码解析Sp
我们要找出所有符合条件的业务Bean,首先我们需要知道在Spring
一、aop中所需要的beanDefinition对象的解析       当xml文件解析到<aop:config>这个节点时,就会解析aop所需要的所有对象  1、在解析到<aop:config>节点时,会向ioc容器中注册内置的beanDefinition:org.springframework.aop.config.internalAuto
效仿原生AapplicationContext  简单的源码分为构造方法和getBean方法所以我们需要冲着些方法考虑基本完成的代码如下AapplicationContext 类如下package cn.jiedada.spring;import java.io.File;import java.lang.annotation.Annotation;import java.net.U
转载 2021-05-25 10:03:49
168阅读
2评论
AOP 面向切面编程,相对于OOP面向对象编程。Spring AOP存在的目
注册后置处理器开启对事务的支持@EnableTransactionManagement@EnableTransactionManagement注解的主要作用是开启对事务的支持,源码如下:@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Import(TransactionManagementC...
前言  spring是一种开源的轻量级的 Io C 和AOP 的容器框架,具体原理操作配置在本人写的spring框架分类中详细介绍了,spring框架详解。我们知道了如何使用以及它的基本特征,但是对其内在是如何实现该功能的没有深刻的了解过。所以新建一个系列,会通过spring源码结合自身的理解,写一系列关于此框架的心得,愿与大家共勉!一 spring 源码下载   
转载 5月前
27阅读
spring源码深度解析—容器的功能扩展(下)接容器的功能扩展(上)6. BeanFactory的后处理BeanFactory作为spring中容器功能的基础,用于存放所有已经加载的bean,为例保证程序上的高可扩展性,spring针对BeanFactory做了大量的扩展,比如我们熟悉的PostProcessor就是在这里实现的。接下来我们就深入分析下BeanFactory后处理6.1 激活注册的
本文已参与「掘力星计划」,赢取创作大礼包,挑战创作激励金。 上一篇文章中说到了申明事务,本文再说一下编程事务,以及实现实现原理。 核心原理 开启Spring事务本质上就是增加了一个Advisor,但我
原创 2022-04-12 15:41:45
263阅读
Spring配置文件的解析是通过BeanDefinitionReader来实现的,其实了解BeanDefinitionReader实
原创 2022-08-25 17:33:39
159阅读
小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。 本文主要讲述 Spring 事务的实现,以及申明式事务 @Transactional 使用案例。 Spring 事务 Spring Fram
原创 2022-04-12 15:43:00
161阅读
  • 1
  • 2
  • 3
  • 4
  • 5