同学你好:
问题一:data-redis 中的 StringRedisTemplate 是首选,RedisTemplate 通常是不建议使用的,因为它会对 Redis 的 key 做修饰。你存储 key-value 时,选择 RedisTemplate 后,key 并不是你所存储的,可以写个 TestCase 看看,也可以看看源码分析下。
问题二:对于 Set 类型,比较好的存储方式类似于:
StringRedisTemplate rt;
SetOperations<String, String> vo = rt.opsForSet();
vo.add("x", "a","b","c");
因为 Redis 本身支持的 key 和 value 必须是 String 类型,所以,相关的转换在代码层面做。