摘要: 1 前言 上节我们简单看了 Enhancer 的 generateClass 和 firstInstance,两个方法的内容也就是创建代理以及生成代理对象的内容,这节我们结合实际生成的文件了解一下代理的实际执行过程。 2 代理文件分析 我们看一下生成的文件有三个:代理类以及两个FastClass,那 阅读全文
posted @ 2023-03-04 20:30 酷酷- 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 1 前言 上节我们看了 EnhancerKey 是通过KeyFactory里的 Generator来创建代理对象,这节我们就来看下 Enhancer是如何创建代理对象的。 2 源码分析 上节我们看过了,AbstractClassGenerator 是模板模式的枢纽,创建代理对象子类复写 genera 阅读全文
posted @ 2023-03-04 14:08 酷酷- 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 1 前言 上节我们简单感受了下Cglib的一个代理过程,并且我也说到了Enhancer 创建代理的时候,首先会创建对象Key出来,用于标识这个类以及将其作为缓存的Key,然后再创建代理对象并放进缓存,那么这节我们就来看下执行的一个具体过程。 2 源码分析 2.1 Key创建的时机 首先我们先来看下是 阅读全文
posted @ 2023-03-03 21:57 酷酷- 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 1 前言 之前我们看过了JDK动态代理的源码了,今天我们大概花三四篇(因为一篇文章东西太多写的人费劲看的人也累哈)来看看Cglib的代理源码过程,其中涉及到asm包中的东西构建类代码什么的这里我暂时不做深入了解哈。 2 环境准备 源码下载地址:http://www.java2s.com/Code/J 阅读全文
posted @ 2023-03-03 20:13 酷酷- 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 1 前言 在了解数据源后,我们来看下事务管理器,这个东西也很重要。 2 事务管理器类型 在 MyBatis 中有两种类型的事务管理器(也就是 type="[JDBC|MANAGED]"): JDBC – 这个配置直接使用了 JDBC 的提交和回滚功能,它依赖从数据源获得的连接来管理事务作用域。默认情 阅读全文
posted @ 2023-03-02 21:34 酷酷- 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 1 前言 这节我们练习下,Mybatis怎么引入第三方的数据源,我们这里拿 Druid 示例。 2 引入 Druid 数据源 2.1 依赖引入 首先我们要把 Druid 的包引进来吧: <dependency> <groupId>com.alibaba</groupId> <artifactId>d 阅读全文
posted @ 2023-03-02 07:52 酷酷- 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 1 前言 上节我们看过了连接池的管理,那么我们这节再看下非池连接的数据源的源码,这部分内容比较少,应该会很轻松,我们来看下吧。 2 源码分析 我们先来看下 UnpooledDataSource 类的基础信息: 2.1 基础信息 public class UnpooledDataSource impl 阅读全文
posted @ 2023-03-02 07:12 酷酷- 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 1 前言 上节我们主要讲解了一些数据源的分类和概念,并简单看了三种数据源工厂的创建,那么这节我们着重看下连接池方式的管理。 2 源码分析 关于连接池的几个类我先简单说下: PooledDataSourceFactory 数据源工厂,用于创建数据源的 PooledDataSource 数据源对象,用于 阅读全文
posted @ 2023-03-01 23:51 酷酷- 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 1 前言 这节我们要看一下数据源的东西了。比如我们以前在XML配置的什么驱动、url、账号密码啥的以及现在我们在SpringBoot下配置的其实都是为了创建我们的数据源,那么这节我们来看下数据源的基础知识和创建过程。 官方关于数据源的讲解:https://mybatis.org/mybatis-3/ 阅读全文
posted @ 2023-03-01 22:51 酷酷- 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 1 前言 我们大概花了7篇文章讲解了配置解析的东西,其中花了4篇是在 mappers 的解析,内容比较多,涉及的类也比较多,所以我们这节来根据类做个总结,什么阶段用的哪个类进行了什么样的处理。 2 配置文件解析的过程 首先我们要清楚一点,我们最终是要得到SqlSessionFactory,因为有了它 阅读全文
posted @ 2023-03-01 08:44 酷酷- 阅读(11) 评论(0) 推荐(0) 编辑