Springboot+Mybatis 二级缓存

2019-07-07 / 12 阅读 / Java

在实际开发中对数据库经常会有这样的需求,数据更新频率低,但是使用频率特别高,如果每次都执行SQL效率将会超低。

例如项目中使用了字典,字典库可能十天半个月也不会更新一次,但在其他查询的地方需要翻译字典值时,会频繁查询字典。如果数据量很大,性能会受很大影响。这时缓存的作用就尤为突出。

但有时又不想费大力气集成其他功能强大,却复杂的缓存框架。使用Springboot为我们准备的轻量缓存就很方便了。

集成方法

第一步:pom依赖

<dependency>
    <groupId>org.mybatis.caches</groupId>
    <artifactId>mybatis-ehcache</artifactId>
    <version>1.1.0</version>
</dependency>

第二步:POJO必须实现Serializable接口

public class BaseEntity implements Serializable {

}

第三步:Mapper.xml文件中配置

<mapper namespace="......mpr.DictMapper">
    // 重要的一步,flushInterval为刷新时间,单位毫秒
    <cache type="org.mybatis.caches.ehcache.EhcacheCache" flushInterval="60000"/>
</mapper>
相关推荐