1.add package config
<dependency>
<groupId>com.github.liuanxin</groupId>
<artifactId>mybatis-redis-cache</artifactId>
<version>1.2.7</version>
</dependency>
2.add class in spring context
import com.github.liuanxin.caches.MybatisRedisCache;
import com.github.liuanxin.caches.RedisContextUtils;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.core.RedisTemplate;
@Configuration
@ConditionalOnClass({ MybatisRedisCache.class, RedisTemplate.class })
public class MybatisCacheConfig {
@Bean
public RedisContextUtils setupCacheContext() {
return new RedisContextUtils();
}
}
3.add config in mapper.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">
<mapper namespace="xxx">
<cache type="com.github.liuanxin.caches.MybatisRedisCache" />
<select .../>
<insert .../>
...
</mapper>
or @CacheNamespace(implementation = MybatisRedisCache.class) in Repository class
add in cache model need implements java.io.Serializable