8、SSM项目使用redis

在上期的 SSM 初始框架下开发SSM 初始项目实例

一、maven 引入 spring 相关包

1、 Jedis

编辑 pom.xml



    redis.clients
    jedis
    3.1.0-rc

2、 Spring Data Redis

编辑 pom.xml



    org.springframework.data
    spring-data-redis
    2.1.9.RELEASE

二、配置 redisTemplate

1、如下目录新增配置文件

image.png

配置文件内容如下



    
    
        
        
        
        
    

    
    

    
    
    
        
        
        
    

注意jedisConnectionFactory内的p 标签需要引入xmlns:p="http://www.springframework.org/schema/p"才能识别

2、配置要点

key 序列化采用StringRedisSerializer
value 序列化采用GenericJackson2JsonRedisSerializer

3、配置 web.xml

修改context-param部分,自动加载所有spring配置


    
        
        contextConfigLocation
        classpath:spring/spring-*.xml
    

三、自动注入使用

1、修改RoleService

添加如下测试代码

 @Autowired
    private RedisTemplate redisTemplate;

private Role testJedisTemplate(Role role){
         redisTemplate.opsForValue().set(role.getId(), role);
         return (Role)redisTemplate.opsForValue().get(role.getId());
    }

2、启动报错

Caused by: java.lang.IllegalStateException: Failed to introspect Class [org.springframework.data.redis.connection.jedis.JedisConnectionFactory] from ClassLoader [ParallelWebappClassLoader
  context: ROOT
  delegate: false

原因:redis jar版本与spring不匹配
去 Spring Data Redis查看当前使用的2.1.9版本

image.png

所以需要将 jedis 的版本更改为 2.9.3

四、运行

可以看到 redis 中的信息如图


image.png

五、代码更改

Github Commit

你可能感兴趣的:(8、SSM项目使用redis)