2021年11月20日
摘要: 上一篇文章主要讲解了事务的Advisor是如何注册进Spring容器的,也讲解了Spring是如何将有配置事务的类配置上事务的,也讲解了Advisor,pointcut验证流程;但是还未提到的那个Advisor里面的advice,想要知道这个我们就先来看一下TransactionIntercepto 阅读全文
posted @ 2021-11-20 18:47 码上遇见你 阅读(625) 评论(0) 推荐(0) 编辑
  2021年11月15日
摘要: 阅读此文章需要掌握一定的AOP源码基础知识,可以更好的去理解事务,我在另外一篇文章有提过。 spring事务其实就是根据事务注解生成代理类,然后在前置增强方法里获取connection,设置connection到threadlocal,开启事务。再执行原始方法,最后在后置增强方法中判断有无异常来进行 阅读全文
posted @ 2021-11-15 21:36 码上遇见你 阅读(1626) 评论(0) 推荐(0) 编辑
  2021年11月2日
摘要: 前言 事务是一个非常重要的知识点,前面的文章已经有介绍了关于SpringAOP代理的实现过程;事务管理也是AOP的一个重要的功能。 事务的基本介绍 数据库事务特性: 原子性 一致性 隔离性 持久性 事务的隔离级别 SQL 标准定义了四种隔离级别,MySQL 全都支持。这四种隔离级别分别是: 读未提交 阅读全文
posted @ 2021-11-02 14:19 码上遇见你 阅读(518) 评论(0) 推荐(0) 编辑
  2021年10月18日
摘要: 前言 上一篇文章中提到了SpringAOP是如何决断使用哪种动态代理方式的,本文接上文讲解SpringAOP的JDK动态代理是如何实现的。SpringAOP的实现其实也是使用了Proxy和InvocationHandler这两个东西的。 JDK动态代理的使用方式 首先对于InvocationHand 阅读全文
posted @ 2021-10-18 09:12 码上遇见你 阅读(500) 评论(0) 推荐(1) 编辑
  2021年10月12日
摘要: 前言 在上一篇文章中讲到了Spring是如何获取对应的Bean的增强,然后本次主要讲解一下Spring如何在获取到增强后创建Spring代理的。 在步入正题之前先给大家看一下Spring创建代理的大致流程图 接下来我们就回到AbstractAutoProxyCreator.class类中的wrapI 阅读全文
posted @ 2021-10-12 09:46 码上遇见你 阅读(1194) 评论(1) 推荐(0) 编辑
  2021年10月7日
摘要: 前言 在上一篇博文中我们说到了通过自定义配置完成了对AnnotationAwareAspectJAutoProxyCreator类型的自动注册,那么这个类究竟做了什么工作从而完成AOP的操作呢?首先我们看一下AnnotationAwareAspectJAutoProxyCreator的类图结构,如图 阅读全文
posted @ 2021-10-07 12:55 码上遇见你 阅读(402) 评论(0) 推荐(0) 编辑
  2021年10月2日
摘要: Spring往期精彩文章 Spring源码搭建 Spring源码阅读一 前言 我们都知道Java是一门面向对象(OOP)的语言,所谓万物皆对象。但是它也存在着一些个弊端:当你需要给多个不具有继承关系的对象引入同一个公共的行为的时候,例如日志,安全检测等等,我们只能在每个对象中去引入这个公共行为,这样 阅读全文
posted @ 2021-10-02 18:45 码上遇见你 阅读(273) 评论(0) 推荐(0) 编辑
  2021年9月28日
摘要: 引导: 众所周知,阅读spring源码最开始的就是去了解spring bean的生命周期:bean的生命周期是怎么样的呢,见图知意: 大致流程: 首先后通过BeanDefinitionReader读取xml、注解的Bean定义信息,可以通过ClassPathXmlApplicationContext 阅读全文
posted @ 2021-09-28 21:38 码上遇见你 阅读(282) 评论(0) 推荐(0) 编辑
  2021年9月26日
摘要: 相关帖子有很多但是都不是最新的Gradle,我在使用Gradle最新版编译的时候简直坑死我了,弄了好久。接下来给大家详细说一下这个安装过程,以及相关的软件版本号。 相关软件、依赖的版本号: Gradle gradle-7.2-bin.zip 该版本官网下载地址 或者自行选择版本 所有版本官网地址 注 阅读全文
posted @ 2021-09-26 09:15 码上遇见你 阅读(1986) 评论(0) 推荐(0) 编辑
  2021年9月15日
摘要: 说到布隆过滤器不得不提到,redis, redis作为现在主流的nosql数据库,备受瞩目;它的丰富的value类型,以及它的偏向计算向数据移动属性减少IO的成本问题。备受开发人员的青睐。通常我们使用redis作为数据缓存来使用,但是作为缓存redis会有一些问题,就是缓存穿透问题、击穿、雪崩、一致 阅读全文
posted @ 2021-09-15 21:24 码上遇见你 阅读(185) 评论(0) 推荐(0) 编辑