1:准备好 Redis 服务器,这里就不详细介绍了, 可以百度 windows 下如何安装 redis 服务器。
2:准备好一个ssm 项目工程
3:添加 redis 支持
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.6.0</version>
</dependency>
4:编写工具工具类
5:新增一个缓存工具类RedisCache 实现 cache接口
6: 开启mybatis 对缓存的支持,在项目中修改 spring-mybatis.xml
<!-- 自动扫描mapping.xml 文件 -->
<property name="mapperLocations" value="classpath:com/pro/webapp/mapping/**/*.xml" />
<!-- 开启缓存支持 -->
<property name="configurationProperties">
<props>
<!-- 开启关键-->
<prop key="cacheEnabled">true</prop>
<!-- 查询时,关闭关联对象即时加载以提高性能 -->
<prop key="lazyLoadingEnabled">false</prop>
<!-- 设置关联对象加载的形态,此处为按需加载字段(加载字段由SQL指定),不会加载关联表的所有字段,以提高性能 -->
<prop key="aggressiveLazyLoading">true</prop>
<!-- 对于未知的SQL查询,允许返回不同的结果集以达到通用的效果 -->
<prop key="multipleResultSetsEnabled">true</prop>
<!-- 允许使用列标签代替列名 -->
<prop key="useColumnLabel">true</prop>
<!-- 允许使用自定义的主键值(比如由程序生成的UUID 32位编码作为键值),数据表的PK生成策略将被覆盖 -->
<prop key="useGeneratedKeys">true</prop>
<!-- 给予被嵌套的resultMap以字段-属性的映射支持 -->
<prop key="autoMappingBehavior">FULL</prop>
<!-- 对于批量更新操作缓存SQL以提高性能 -->
<prop key="defaultExecutorType">BATCH</prop>
<!-- 数据库超过25000秒仍未响应则超时 -->
<prop key="defaultStatementTimeout">25000</prop>
</props>
</property>
7:在相关的mapper.xml 中添加所需要的缓存工具类(即:上面的Cache 类)
<cache type="com.pro.webapp.util.RedisCache" />
以上就完成了第三方缓存的添加,就可以进行测试了,项目运行后会在控制台查看到 缓存执行的过程
附:redis 工具管理,以图形化界面的方式查看缓存,redis desk manager