自定义实现二级缓存的方式,可以看到下面redis里面已经放入的缓存
1.redis
org.mybatis.caches
mybatis-redis
1.0.0-beta2
redis作为缓存都可以是不是可以自定义缓存呢?当然可以啦
直接实现Cache接口,xml里面指定类型即可
/**
* 重写各个方法后想存哪存哪
*/
public class MyCache implements Cache {
@Override
public String getId() {
return null;
}
@Override
public void putObject(Object key, Object value) {
}
@Override
public Object getObject(Object key) {
return null;
}
@Override
public Object removeObject(Object key) {
return null;
}
@Override
public void clear() {
}
@Override
public int getSize() {
return 0;
}
}
上面介绍了redis,其实mybatis也提供了ehcache进行缓存
org.mybatis.caches
mybatis-ehcache
1.1.0
ehcache.xml配置如下
<?xml version="1.0" encoding="UTF-8"?>
缓存的地方有两个文件,一个是存磁盘的lock文件,另一个是具体数据文件data,缓存里面的内容被序列化,大概能看到属性什么