
ORM
文章平均质量分 87
ORM
默辨
希望成为一个有思想的软件工程师
展开
-
Spring Data JPA的简单使用
Spring Data JPA的简单使用原创 2022-10-06 19:43:09 · 560 阅读 · 0 评论 -
浅谈MyBatis源码工具类之——Reflector类
最近在看MyBatis源码,发现MyBatis底层有一个自己封装的工具类——Reflector,该类位于org.apache.ibatis.reflection包下。MyBatis在解析数据库查询返回数据的时候,会使用到我们配置的映射类型,它在底层实现的时候,就使用到了该工具类。在阅读了这个工具类方法的源码之后,特作简单小节。该工具类就是一个反射方法的封装体,能够传入指定的Class类,然后解析出类中相关的数据信息。文章目录一、使用分享1、方法测试2、简单使用二、源码分享1、addFields2、原创 2021-10-27 23:51:39 · 578 阅读 · 1 评论 -
MyBatis使用foreach批量插入一个含List<实体>成员变量的实体类
文章目录一、List<String>二、List<IntEntity>三、再次修改MyBatis使用foreach批量插入一个实体类数据,其中这个实体类包含一个List的成员变量。即一个student类,里面含有一个hobby的成员变量,这个hobby由于可以有很多,所以用一个list来存。这个使用的数据可能是name=张三,hobby={跑步 ,唱歌,游泳},最终存到数据库里面就是三条数据,分别是张三-跑步,张三-唱歌,张三-游泳。该测试背景是基于自己工作时代码,当原创 2021-08-29 22:24:36 · 8273 阅读 · 0 评论 -
MyBatis-Plus
文章目录一、概述二、快速入门三、日志文件的配置四、CRUD测试4.1、insert新增数据4.2、delete删除数据4.3、update更新数据4.4、select查询数据五、其他操作5.1、主键生成策略5.2、自动填充值(日期)5.3、实现乐观锁5.4、分页插件5.5、逻辑删除六、条件构造器(重点)七、代码生成器一、概述MyBatis-Plus 为简化开发而生类似作用的还有JPA 、 tk-mapper、MyBatisPlus官网:https://mp.baomidou.comMy原创 2021-05-21 10:45:55 · 1528 阅读 · 20 评论 -
为什么MyBatis配置映射器只有四种
以下代码为MyBatis源码://解析mappers标签mapperElement(root.evalNode("mappers"));private void mapperElement(XNode parent) throws Exception { if (parent != null) { //循环遍历我们mappers标签下面的所有子标签 for (XNode child : parent.getChildren()) { .原创 2021-03-04 22:46:41 · 210 阅读 · 5 评论 -
浅析MyBatis执行器原理
文章目录一、执行器在什么位置二、执行器生成源码解析2.1、生成默认执行器三、执行器的结构分析四、完整查询分析4.1、二级缓存4.2、一级缓存4.3、数据库查询4.4、大致执行结构图五、手写代码还原基本骨架本文大部分代码来自MyBatis源码,你可以对照着源码一起看一、执行器在什么位置初学MyBatis时,我们都知道MyBatis是拥有一级和二级两种缓存,并且默认开启一级缓存,二级缓存我们只需要在配置文件中手动配置即可。<!--开启全局缓存,默认也是开启的,但是建议还是手动的开启--&原创 2021-02-21 01:12:35 · 626 阅读 · 5 评论 -
MyBatis官方文档——Java API部分
文章目录Java API1、目录结构2、SqlSession2.1、SqlSessionFactoryBuilder2.2、SqlSessionFactory2.3、SqlSessionJava API既然你已经知道如何配置 MyBatis 以及如何创建映射,是时候来尝点甜头了。MyBatis 的 Java API 就是这个甜头。稍后你将看到,和 JDBC 相比,MyBatis 大幅简化你的代码并力图保持其简洁、容易理解和维护。为了使得 SQL 映射更加优秀,MyBatis 3 引入了许多重要的改进原创 2021-02-11 19:25:04 · 666 阅读 · 0 评论 -
MyBatis官方文档——XML映射文件部分
文章目录XML 映射器1、select2、insert, update 和 delete3、sql片段4、参数4.1、字符串替换5、结果映射(重难点)5.1、高级结果映射5.2、结果映射(resultMap)5.3、id & result5.4、支持的 JDBC 类型5.5、构造方法5.5、关联(多对一)5.6、集合(一对多)5.7、鉴别器6、自动映射7、缓存7.1、使用自定义缓存7.2、cache-refXML 映射器MyBatis 的真正强大在于它的语句映射,这是它的魔力所在。由于它的异原创 2021-02-08 23:08:08 · 594 阅读 · 0 评论 -
MyBatis官方文档——动态SQL部分
文章目录动态 SQL一、if二、choose、when、otherwise三、trim、where、set四、foreach五、script六、bind七、多数据库支持八、动态 SQL 中的插入脚本语言动态 SQL动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL,可以彻底摆脱这种痛苦。使用动态 SQL 并非一件易原创 2021-02-06 20:00:10 · 235 阅读 · 0 评论 -
MyBatis官方文档——SQL语句构建及日志部分
文章目录SQL 语句构建器1、问题2、解决方案3、SQL 类4、SqlBuilder 和 SelectBuilder (已经废弃)日志1、日志配置SQL 语句构建器1、问题Java 程序员面对的最痛苦的事情之一就是在 Java 代码中嵌入 SQL 语句。这通常是因为需要动态生成 SQL 语句,不然我们可以将它们放到外部文件或者存储过程中。如你所见,MyBatis 在 XML 映射中具备强大的 SQL 动态生成能力。但有时,我们还是需要在 Java 代码里构建 SQL 语句。此时,MyBatis原创 2021-01-31 17:31:24 · 276 阅读 · 0 评论 -
MyBatis官方文档——XML配置部分
文章目录XML配置1、属性(properties)2、设置(settings)3、类型别名(typeAliases)4、类型处理器(typeHandlers)5、对象工厂(objectFactory)6、插件(plugins)7、环境配置(environments)8、数据库厂商标识(databaseIdProvider)9、映射器(mappers)XML配置MyBatis 的配置文件(MyBatis-config.xml)包含了会深深影响 MyBatis 行为的设置和属性信息。该层主要是对MyBa原创 2021-01-27 23:43:40 · 968 阅读 · 0 评论 -
MyBatis官方文档——入门部分
文章目录简介1、什么是 MyBatis?入门1、安装2、从 XML 中构建 SqlSessionFactory3、不使用 XML 构建 SqlSessionFactory4、域(Scope)和生命周期5、探究已映射的 SQL 语句简介1、什么是 MyBatis?MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和原创 2021-01-14 21:51:47 · 509 阅读 · 2 评论 -
Mybatis知识点复习(第一次)
这一个技术点,更多的是实践,毕竟SQL这个东西,特别是动态SQL、多表查询哪里,其实不难,但是我们写的少了,就看起来很难。配置方面的东西都是死的,我们只需要记住概念,当然有时间的小伙伴可以去多探究一下他的底层原理。这对于我们理解这个技术还是很有帮助的!!!文章目录1、概述2、编写CRUD的测试程序3、配置解析3.1、核心配置文件3.2、环境配置3.3、别名3.4、设置3.5、引入对应的mappe...原创 2020-04-09 16:38:32 · 280 阅读 · 0 评论 -
MyBatis
1、简介1.1、什么是MybatisMyBatis 是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。MyB...原创 2020-03-10 21:51:55 · 381 阅读 · 0 评论