自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Spring5源码分析-------Aop篇(二)

在我们看五个通知执行源码之前,我们先来了解一下核心问题。SpringAop核心的设计模式为,动态代理模式和责任链设计模式。动态代理前面也提到过,cglib和jdk代理。至于责任链模式才是这一次的重点内容。他关系到我们五个通知为什么会有序的执行。项目结构:我们先来模拟一下责任链模式,责任链设计模式核心是递归的思路,但是递归会产生溢出的现象,所以我们需要约束条件,使程序正常运行.在以下程序中,除了更改前置和环绕通知的添加顺序之外,其他的方式均不会导致结果的变化.此模拟不是完整的AOP五个通知正常顺序模拟

2021-02-25 23:46:56 63

原创 Spring5源码分析-------Aop篇(一)

在前面的文章(https://blog.csdn.net/weixin_43911969/article/details/114024729)中提到了@EnableAspectJAutoProxy这个注解,也已经提到过它的核心就是@Import(AspectJAutoProxyRegistrar.class),然而我们SpringAop中最重要的类也是这个。下面我们来查看AOP核心源码registry.registerBeanDefinition(“org.springframework.aop

2021-02-25 15:50:09 147

原创 SpringAop的基本使用------进阶版

前面我们进行了基础版本的简介,主要是五个通知。接下来我们应用到实际场景(事务管理):pom.xml<dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</

2021-02-24 21:01:52 93

原创 SpringAOP的基本使用------基础版

AOPaop:面向切面编程,针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果。一般使用在方法上,对方法进行调用前后的处理。应用场景:日志、事务、安全控制、计算方法耗时核心通知:前置通知,后置通知,环绕通知,运行通知,异常通知原理:动态代理模式目前的动态代理有:JDK动态代理,实现InvocationHandler,底层使用反射技术,是基于接口实现代理cglib动态代理,基于asm 基于类实现代理 继承模式下面我们来了解一

2021-02-24 19:48:12 92

原创 Spring5源码分析------bean的生命周期(二)

Spring Bean的生命周期如何判断Bean初始化了初始化:指的是对象已经创建并且里面所有的set已经全部执行完毕在@Bean中有着initMethod,destoryMethod属性,他们代表着bean被初始化和销毁具体用法:UserEntity.javapackage com.entity;public class UserEntity { public UserEntity(){ System.out.println("UserEntity无参构造.

2021-02-23 23:00:02 102

原创 Spring5源码分析------bean的生命周期(一)

1.BeanFactory和ApplicationContext我们先查看ApplicationContext的类图吧(IDEA快捷键Ctrl+Alt+U)我们会发现BeanFactory是Application的父类,那么他们两者有什么区别呢我们先来了解他们的作用BeanFactory:是Spring里面最低层的接口,提供了最简单的容器的功能,只提供了实例化对象和拿对象的功能;ApplicationContext:应用上下文,继承BeanFactory所有的功能,它是Spring的一各更高

2021-02-23 00:37:32 101

原创 Spring5源码分析------基础知识了解(二)

1.@Import的使用在com.entity下创建UserEntity.javapackage com.entity;public class UserEntity {}com.config下创建MyConfig.javapackage com.config;import com.entity.UserEntity;import org.springframework.context.annotation.Configuration;import org.springframewo

2021-02-18 16:58:34 70

原创 Spring5源码分析------基础知识了解(一)

1.对于Spring的理解Spring框架是java应用最广的框架,它的成功来源于理念,它的理念包括ioc和aop(理念:每个bean与bean之间的关系统一交给SpringIOC容器管理)。Spring框架主要由七部分组成,分别是 Spring Core、 Spring AOP、 Spring ORM、 Spring DAO、Spring Context、 Spring Web和 Spring Web MVC2.Spring与传统对象管理的区别在传统中,我们使用对象都是通过new xxx()来进行

2021-02-17 20:20:08 108

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除