![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MyBatis
文章平均质量分 92
yuan_404
这个作者很懒,什么都没留下…
展开
-
Mybatis(10. Mybatis 底层原理)学习笔记
上一篇 :9. 缓存 文章目录1. 手动实现简单的 Mybatis1. 编码2. 小结 1. 手动实现简单的 Mybatis 这里实现的是利用注解传入 SQL 这里利用一个简单的手写案例,大致理解以下 Mybatis 的工作原理 因为是简单案例,所以没有框架那么严谨、没有真正查询数据库,只是解析出了注解上对应的真正的 1. 编码 先写一个实体类 :User @Data @NoArgsConstructor @AllArgsConstructor public class User { pri原创 2020-11-25 15:40:25 · 165 阅读 · 0 评论 -
MyBatisPlus-狂神-学习笔记
文章目录1. 简介2. 快速入门 1. 简介 是什么 MyBatis 本来就是简化 JDBC 操作的,然后MyBatisPlus是用来简化 MyBatis的。 为什么要学习它呢 MyBatisPlus可以节省我们大量工作时间,所有的CRUD代码它都可以自动化完成! 官网 : https://mp.baomidou.com/ 特性 无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作, BaseMappe原创 2020-10-17 16:16:34 · 908 阅读 · 4 评论 -
Mybatis-入门(9. 缓存)学习笔记
文章目录1. 简介2. Mybatis缓存3. 一级缓存4. 一级缓存失效的四种情况5. 二级缓存1. 介绍2. 使用步骤3. 结论6. 缓存原理图7. EhCache1. 介绍2. 使用3. 自定义 Cache 1. 简介 什么是缓存 [ Cache ]? 存在内存中的临时数据。 将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。 为什么使用缓存? 减少和数据库的交互次数,减少系统开销,提高原创 2020-09-04 16:16:22 · 107 阅读 · 0 评论 -
Mybatis-入门(8. 动态SQL)学习笔记
文章目录1. 介绍2. 搭建环境3. if 语句4. Where 语句5. Set 语句6. choose 语句7. SQL片段8. Foreach9. 小结 1. 介绍 什么是动态SQL:动态SQL指的是根据不同的查询条件 , 生成不同的Sql语句. 我们之前写的 SQL 语句都比较简单,如果有比较复杂的业务,我们需要写复杂的 SQL 语句,往往需要拼接,而拼接 SQL ,稍微不注意,由于引号,空格等缺失可能都会导致错误。 那么怎么去解决这个问题呢?这就要使用 mybatis 动态SQL,通过原创 2020-09-04 14:36:50 · 102 阅读 · 0 评论 -
Mybatis-入门(7. 一对多和多对一处理)学习笔记
文章目录1. 多对一的处理1. 多对一的理解:2. 数据库设计3. 搭建测试环境4. 按查询嵌套处理5. 按结果嵌套处理6. 小结1. 一对多的处理1. 一对多的理解2. 数据库设计3. 搭建测试环境4. 按查询嵌套处理5. 按结果嵌套处理3. 小结4. 注意 1. 多对一的处理 1. 多对一的理解: 多个学生对应一个老师 如果对于学生这边,就是一个多对一的现象,即从学生这边关联一个老师! 2. 数据库设计 SQL 代码 CREATE TABLE `teacher` ( `id` INT(10原创 2020-09-04 10:58:47 · 111 阅读 · 0 评论 -
Mybatis-入门(6. 使用注解开发)学习笔记
文章目录1. 面向接口编程2. 利用注解开发1. 介绍2. 查询及mybatis执行流程3. 增删改查4. 关于@Param5. #与$的区别使用注解和配置文件协同开发,才是MyBatis的最佳实践! 1. 面向接口编程 为什么会使用面向接口编程 大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好 在一个面向对原创 2020-09-03 17:12:03 · 103 阅读 · 0 评论 -
Mybatis-入门(5. ResultMap及分页)学习笔记
文章目录1. ResultMap1. 自动映射2. 手动映射2. 属性名和字段名不一致问题1. 问题演示2. 解决办法 1. ResultMap 结果集映射 resultMap 元素是 MyBatis 中最重要最强大的元素。它可以让你从 90% 的 JDBC ResultSets 数据提取代码中解放出来。 ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了。 1. 自动映射 之前写的就是简单映射语句的示例,但并没有显式指定原创 2020-09-03 15:05:55 · 174 阅读 · 0 评论 -
Mybatis-入门(4.生命周期和作用域)学习笔记
文章目录1. 作用域(Scope)和生命周期2. 作用域理解1. SqlSessionFactoryBuilder2. SqlSessionFactory3. SqlSession 1. 作用域(Scope)和生命周期 理解我们目前已经讨论过的不同作用域和生命周期类是至关重要的,因为错误的使用会导致非常严重的并发问题。 2. 作用域理解 1. SqlSessionFactoryBuilder SqlSessionFactoryBuilder 的作用在于创建 SqlSessionFactory 创建原创 2020-09-03 14:40:46 · 118 阅读 · 0 评论 -
Mybatis-入门(3. 配置解析)学习笔记
文章目录1. 核心配置文件2. 配置环境(environments)3. 属性(properties)4. 类型别名(typeAliases)5. 设置(settings)6. 映射器(mappers) 1. 核心配置文件 mybatis-config.xml 系统核心配置文件 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 能配置的内容如下: configuration(配置) properties(属性)★ settings(设置)★ typeA原创 2020-09-03 10:45:35 · 106 阅读 · 0 评论 -
Mybatis-入门(2. 第一个 MyBatis 程序)学习笔记
文章目录1. 搭建环境1. 搭建数据库2. 新建项目3. 创建子模块2. 编写程序1. 编写MyBatis工具类2. 创建实体类3. Dao接口4. 接口实现类5. 测试(JUnit)6. 注意点3. 增删改查 思路流程:搭建环境–>导入Mybatis—>编写代码—>测试 1. 搭建环境 1. 搭建数据库 CREATE DATABASE `mybatis`; USE `mybatis`; DROP TABLE IF EXISTS `user`; CREATE TABLE `us原创 2020-09-02 17:35:15 · 137 阅读 · 0 评论 -
Mybatis-入门(1. 简介)学习笔记
文章目录1. 什么是MyBatis2. 持久化3. 持久层4. 为什么需要Mybatis5. MyBatis的优点 1. 什么是MyBatis MyBatis 是一款优秀的持久层框架 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。 MyBatis 本是apache的原创 2020-09-02 14:16:14 · 104 阅读 · 0 评论