关于存储到Redis的缓存不是中文显示问题

来源:5-5 实现注册超级管理员功能(Web层)

杨清川

2022-08-20


redisTemplate.opsForValue().set方法存放进数据后是乱码显示
@Test
void insertForRedisTest() {
    redisTemplate.opsForValue().set("id", "999" + "", 100, TimeUnit.SECONDS);
}

http://img.mukewang.com/szimg/6300ef9c09d8488c13530311.jpg

然后我就搜了一段配置类,这样在数据库就可以看到真实数据了

@Configuration
public class RedisConfig {

    @Resource
    private RedisTemplate redisTemplate;

    @Bean
    public RedisTemplate<String, Object> stringSerializerRedisTemplate() {
        RedisSerializer<String> stringSerializer = new StringRedisSerializer();
        redisTemplate.setKeySerializer(stringSerializer);
        redisTemplate.setValueSerializer(stringSerializer);
        redisTemplate.setHashKeySerializer(stringSerializer);
        redisTemplate.setHashValueSerializer(stringSerializer);
        return redisTemplate;
    }
}

http://img.mukewang.com/szimg/6300f015093c4e1514020357.jpg

我想问,一般情况下需要配置吗,还是就是让他乱码就可以呢。

写回答

1回答

神思者

2022-08-21

建议你别这么弄,因为课程工作流项目用的redis和你自己写的Template编码对不上,导致roomId生成不了

1
1
杨清川
非常感谢!
2022-08-21
共1条回复

SpringBoot 在线协同办公小程序开发 全栈式项目实战

未来趋势型业务 + 前后端综合技术栈 + 惊艳的细节打磨

1798 学习 · 1915 问题

查看课程