本文章主要记述了学习自定义框架所理解的框架结构以及对使用MyBatis中会用到的配置内容的链接,方便使用的时候查询。
这里写目录标题
MyBatis及MP官方网站
自定义持久层框架(仿MyBatis)
配置文件和映射文件所对应的实体类关系逻辑
调用持久层框架时框架内部的执行过程
调用过程中的build执行过程
MyBatis框架使用中常用的配置内容模版
-
sqlMapConfig.xml 约束头
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN“ "http://mybatis.org/dtd/mybatis-3-config.dtd">
需要注意的是config下的标签内容有限定好的编写顺序,编写是必须遵循。
属性<properties/> 设置<settings/> 类型命名<typeAliases/> 类型处理器<typeHandlers/> 对象工厂<objectFactory/> 插件<plugins/> 配置环境<environments> 环境变量<environment> 事务管理器<transactionManager/> 数据源<dataSource/> 环境变量</environment> 配置环境</environments> 数据库厂商标识<databaseIdProvider/> 映射器<mappers/>
-
常用配置:<typeAliases>
<typeAlias alias="Tag" type="domain.blog.Tag"/><!--给单个类加别名--> <package name="domain.blog"/><!--给整个包下的类加别名-->
-
映射文件 XXXMapper.xml 约束头
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
- 使用redis作为MyBatis的二级缓存
修改映射文件的配置<dependency> <groupId>org.mybatis.caches</groupId> <artifactId>mybatis-redis</artifactId> <version>1.0.0-beta2</version> </dependency>
<cache type="org.mybatis.caches.redis.RedisCache" />
- 添加配置 redis.properties文件
redis.host=localhost redis.port=6379 redis.connectionTimeout=5000 redis.password= redis.database=0
- 使用redis作为MyBatis的二级缓存
-
MyBatis 自定义插件
<plugins> <plugin interceptor="com.lagou.plugin.MySqlPagingPlugin"> <!--配置参数--> <property name="name" value="Bob"/> </plugin> </plugins>
- PageHelper插件
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>3.7.5</version> </dependency> <dependency> <groupId>com.github.jsqlparser</groupId> <artifactId>jsqlparser</artifactId> <version>0.9.1</version> </dependency>
- 通用Mapper插件
在sqlMapConfig.xml文件中添加配置内容<dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>3.1.2</version> </dependency>
<plugins> <!--分页插件:如果有分页插件,要排在通用mapper之前--> <plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql"/> </plugin> <plugin interceptor="tk.mybatis.mapper.mapperhelper.MapperInterceptor"> <!-- 通用Mapper接口,多个通用接口用逗号隔开 --> <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/> </plugin> </plugins>
- PageHelper插件
MyBatis-Plus相关内容索引
- MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具
如@TableField(支持ResultType 和 数据字段不对应)查询的时候配置不查询该字段等配置
加了一些全局的配置(是否启用缓存,默认的主键生成策略)
-
性能分析插件
-
Sql注入器
其他在使用过程中可能遇到的问题
1. MyBatis Generator-使用mave plugin生成代码和映射文件
2. prePareStatement 中文乱码问题的原因 及解决方案
网上Mybatis源码分析文章
深入浅出Mybatis系列(一)—Mybatis入门
深入浅出Mybatis系列(二)—配置简介(mybatis源码篇)
深入浅出Mybatis系列(三)—配置详解之properties与environments(mybatis源码篇)
深入浅出Mybatis系列(四)—配置详解之typeAliases别名(mybatis源码篇)
深入浅出Mybatis系列(五)—TypeHandler简介及配置(mybatis源码篇)
深入浅出Mybatis系列(六)—objectFactory、plugins、mappers简介与配置
深入浅出Mybatis系列(七)—mapper映射文件配置之insert、update、delete
深入浅出Mybatis系列(八)—mapper映射文件配置之select、resultMap
深入浅出Mybatis系列(九)—强大的动态SQL
深入浅出Mybatis系列(十)—SQL执行流程分析(源码篇)