
MyBatis
文章平均质量分 79
MyBatis
鹿与狼
这个作者很懒,什么都没留下…
展开
-
MyBatis笔记(七):插件
1、四大对象 1.1、四大对象 StatementHandler:处理sql语句预编译,设置参数等相关工作 ParameterHandler:处理传入参数集 ResultHandler:处理结果集 Executor:它是一个执行器,真正进行java与数据库交互的对象 1.2、四大对象创建要点 每个创建出来的对象不是直接返回的,而是interceptorChain.pluginAll(parameterHandler); 获取到所有的Interceptor(拦截器)(插件需要实现的接口); 调原创 2021-03-10 12:01:29 · 189 阅读 · 0 评论 -
MyBatis笔记(六):工作原理
运行原理图 分层示意图 一、创建SQLSessionFactory Configuration封装了所有配置文件的详细信息 总结:把配置文件的信息解析并保存在Configuration对象中,返回包含了Configuration的DefaultSqlSession对象。 二、返回SqlSession类 返回SqlSession的实现类DefaultSqlSession对象。他里面包含了Executor和Configuration Executor会在这一步被创建 三、返回Mapper原创 2021-03-08 23:27:16 · 182 阅读 · 1 评论 -
MyBatis笔记(五):代码生成器
在pom文件中添加插件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apach原创 2021-03-08 21:51:58 · 140 阅读 · 0 评论 -
MyBatis笔记(四):缓存
一、简介 MyBatis系统中默认定义了两级缓存,一级缓存和二级缓存。 一级缓存是SqlSession级别的缓存,也称为本地缓存),默认开启 二级缓存是基于namespace级别的缓存,需要手动开启和配置 为了提高扩展性, MyBatis定义了缓存接口Cache,可以通过实现Cache接口来自定义二级缓存 二、一级缓存 一级缓存(local cache),即本地缓存,作用域默认为sqlSession。 当 Session flush 或 close 后,该Session 中的所有 Cache 将原创 2021-03-08 18:23:14 · 274 阅读 · 0 评论 -
MyBatis笔记(三):动态sql
一、简述 动态SQL是MyBatis强大特性之一。极大的简化我们拼装SQL的操作。 动态SQL元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似。 MyBatis采用功能强大的基于 OGNL 的表达式来简化操作 二、if判断 根据传入的参数,决定是否将该参数拼接到sql中 举例,查询员工,传入的参数不为空则查询时作为条件查询 DynamicSQLMapper.java DynamicSQLMapper.xml,在<if>标签中,test参数的值为判断表达式,根据传入的原创 2021-03-08 16:47:20 · 1370 阅读 · 1 评论 -
MyBatis笔记(二):映射文件
1、增删改查 修改Mapper接口,增加方法 修改EmployeeMapper.xml文件 测试 增删改中允许定义为Integer、Long、Boolean、void等返回类型 不同的session,对是否需要手动提交请求有不同要求 sqlSessionFactory.openSession();===》手动提交 sqlSessionFactory.openSession(true);===》自动提交 2、获取主键 2.1、获取自增主键 在操作标签中使用useGeneratedKeys原创 2021-03-05 15:03:35 · 425 阅读 · 0 评论 -
MyBatis笔记(一):基本概念、配置文件
1、介绍 1.1、MyBatis是什么 MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 MyBatis 可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO( Plain Old Java Objects,普通的Java对象)映射成数据库中的记录 1.2、MyBatis历史 原是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Softw原创 2021-03-02 16:03:33 · 204 阅读 · 0 评论