之前简单介绍了数据库的相关配置与操作,频繁的数据库操作是很影响性能的,所以一般搭建好数据库后,都会给对应的操作配上缓存处理,这里就简单介绍下EhCache,配置起来很方便,而且也没遇到什么问题,本来想使用Redis来作缓存的,但研究了好久,遇到了不少的坑,毕竟我也是一个小白,最后只能妥协转战EhCache了。
1、在pom.xml中添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
</dependency>
2、在resource下创建ehcache.xml,并配置
有关文件里的配置详解,请参考这篇文章。
3、在mybatis-config.xml里添加代码,开启缓存设置
<settings>
<setting name="cacheEnabled" value="true" />
</settings>
4、在OrderApplication.java类添加注解 @EnableCaching
5、找到我们的UserMapper.java文件,添加注解 @CacheConfig(cacheNames ="userCache"),这里的cacheNames要与ehcache.xml里的一致。
在我们要使用缓存的接口方法上,添加注解 @Cacheable,这里我们就在查询方法上添加此注解。
到此,就基本完成了简单的配置了,下面来测试一下。首先启动服务,通过查看数据库的表数据,我们可以看到有一个id为2的数据
通过接口查询,得到下面的这段json数据
通过工具,直接在数据库表里更改这条数据的信息
再请求一下接口,看下数据,发现返回的json数据还是改动之前的,说明这里添加的ehcache缓存已经成功执行了。重启服务后,缓存自动被清空,再请求数据,就会发现是改动过后的数据了。
网友评论