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