Mybatis高级应用总结
1.二级缓存整合Redis
加入如下依赖,并在Mapper.xml文件中加入配置<cache type="org.mybatis.caches.redis.RedisCache" />
<dependency>
<groupId>org.mybatis.caches</groupId>
<artifactId>mybatis-redis</artifactId>
<version>1.0.0-beta2</version>
</dependency>
mybatis-redis在存储数据的时候使用的hash结构,把cache的id作为这个hash的key(cache的id在mybatis中就是mapper的namespace);这个Mapper中的查询缓存数据作为hash的field,需要缓存内容直接使用SerializeUtil存储。
2.Mybatis的插件应用
自定义一个plugin实现Intercpter接口,然后在mybatis-config.xml文件中加入plugin,如下图
<plugins>
<plugin interceptor="com.my.plugin.MyPlugin"></plugin>
</plugins>
![](https://img2020.cnblogs.com/blog/1428303/202007/1428303-20200707230700052-1128872038.png)
3.通用mapper解决单表的增删改查
①首先在maven中引入依赖
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper</artifactId>
<version>3.1.2</version>
</dependency>
②在mybatis-config.xml文件中配置插件
<plugins>
<plugin interceptor="tk.mybatis.mapper.mapperhelper.MapperInterceptor">
<property name="mappers" value="tk.mybatis.mapper.common.Mapper"/>
</plugin>
</plugins>
③定义mapper继承Mpaaer类,然后UserMapper就有基本的CRUD方法,如下:
public interface UserMapper extends Mapper<User> {}
探索不以困难而止,学习不以艰苦而终