
Mybatis
文章平均质量分 93
MyBatis Mybatis-plus 相关博客
FYHannnnnn
知道的越多,不知道的也就越多
展开
-
Mybatis延迟加载源码剖析
一,什么是Mybatis延迟加载在需要用到数据时才进行加载,不需要用到数据时就不加载数据,延迟加载也称懒加载。二,延迟加载应用应用`要求:每个用户下绑定了很多的订单,在查询返回结果时,调用用户属性获取信息时(不涉及用户下订单信息),用户与订单的联合查询只执行查询用户信息的语句部分。1,局部延迟加载:弊端:需要在每一个调用的ResultMap中去配置。<!-- 开启⼀对多 延迟加载 --><resultMap id="userMap" type="user原创 2021-08-29 00:10:32 · 281 阅读 · 2 评论 -
Mybatis二级缓存源码剖析
⼆级缓存构建在⼀级缓存之上,在收到查询请求时,MyBatis 首先查询⼆级缓存,若⼆级缓存未命 中,再去查询⼀级缓存,⼀级缓存没有,再查询数据库。与⼀级缓存不同,⼆级缓存和具体的命名空间绑定,⼀个Mapper中有⼀个Cache,相同Mapper中的 MappedStatement公用⼀个Cache,⼀级缓存则是和 SqlSession 绑定一,全局二级缓存开启配置<settings> <setting name="cacheEnabled" value="true"/>原创 2021-08-22 00:47:37 · 218 阅读 · 0 评论 -
MyBatis Mapper JDK动态代理方式源码分析
从JDBC优化到传统XML配置Mybatis主线源码解析上篇文章从JDBC优化开始,对Mybatis传统xml配置主线流程源码剖析,这里不多对JDBC,xml配置的框架源码做多的分析,直接看源码:还是从框架的启动入口着手,SqlSession接口的解析,在上篇文章中有提到这里不多赘述。通常情况,UserMapper我们并没有对其进行接口的实现,在接口的声明时通过@Mapper配置或XML配置Mapper接口路径去暴露接口位置信息。 接口中包含的一些Mybatis框架自己封装的数据库操作方法或是映原创 2021-08-14 23:55:04 · 361 阅读 · 0 评论 -
从JDBC优化深入Mybatis主线源码
一,JdbcUtil弊端初入JAVA学习时候,到JDBC操作数据库,无框架阶段大部分都经历过简单JDBC的封装工具类的过程,下面是一段简单的从加载数据库驱动连接数据库到执行数据库SQL返回数据代码。传统的JDBC存在很明显的一些弊端1,每一次加载都是新建立一个JDBC的连接造成资源的浪费,且数据库的配置参数存在硬编码,多数据源的情况下代码耦合性大且存在硬编码(数据库配置文件化与数据库连接池)2,SQL语句存在硬编码,SQL变化大时需要修正SQL语句,且preparedStatement传原创 2021-07-26 21:09:24 · 251 阅读 · 0 评论 -
jdbc实战-实现类Mybatis结果集解析
Jdbc 比较繁琐的一个操作就是解析结果集ResultSet, 在实际开发时, 通常会将对结果集的解析封装为一个工具类. 需要注意的时, jdbc查询出来的属性可能不能直接转换为java的类型, 比如说java.sql.Date, 不能直接转换为java.util.Date 或LocalDate等类型, 需要自定义转换器. 如果比较熟悉Mybatis的话, 会发现Mybatis底层也封装了大量的类...转载 2019-08-28 16:18:53 · 468 阅读 · 0 评论 -
Mybatis 注解写法( 附10余个常用例子 )
Mybatis 除了 XML 配置写法,还可以使用注解写法。首先需要引入 Mybatis 的依赖:<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId>...转载 2019-11-06 10:40:23 · 781 阅读 · 0 评论