Springboot + Mybatis + Redis 实现二级缓存功能

1.使用redis 实现mybaits 的二级缓存功能:
使用Redis实现二级缓存,将运行结果存放在redis当中,以便多次查询时,可以直接在内存中直接获取。

2.项目配置目录构成:


屏幕截图(103).png

运行环境为
springboot: 2.0.1
redis: 3.2.100
mybatis: 3.5.2
mysql 5.7
java 1.8.0_152

3.配置文件:
application-yml文件:


屏幕截图(112).png

HunterMapper.xml文件:


屏幕截图(113).png

Mybaits-confi.xml 文件:


屏幕截图(114).png

maven配置(pom):

    
        mysql
        mysql-connector-java
        5.1.46
    

    
        org.springframework.boot
        spring-boot-starter
        2.0.1.RELEASE
    

    
        org.springframework.boot
        spring-boot-starter-aop
        2.0.2.RELEASE
    

    
        org.springframework.boot
        spring-boot-starter-cache
    
    
        org.springframework.boot
        spring-boot-starter-data-redis
    

    
        org.springframework.boot
        spring-boot-starter-web
    

    
    
        org.mybatis
        mybatis
        3.5.2
    

    
    
        org.mybatis.spring.boot
        mybatis-spring-boot-starter
        2.0.1
    

4.springboot的代码:
4.1 测试用的Bean(HunterImpl):


屏幕截图(116).png

4.2 Controller:


屏幕截图(118).png

4.3 Mapper:


屏幕截图(115).png

4.4 Service:
在service层中,需要添加 @Cacheable 注解使返回的值存放在cache当中


屏幕截图(117).png

5.运行:
再加上启动类Start的实现(注意,在Start类中需要添加 @EnableCaching 以启用缓存机制):


屏幕截图(119).png

启动redis :
./redis/redis-server.sh
./redis/redis-cli.sh

在浏览器中输入url进行验证:


屏幕截图(121).png

执行
127.0.0.1:6397> keys *
查看执行后的缓存数据

具体代码:https://github.com/mushroomcode/bounce12

你可能感兴趣的:(Springboot + Mybatis + Redis 实现二级缓存功能)