RedisTemplate
和 StringRedisTemplate
都提供了一些操作 Redis
的模板方法,但是两者之间是有一些区别的
从上图中可以看出,StringRedisTemplate
是继承了 RedisTemplate
的,RedisTemplate
有一个成员变量 defaultSerializer
RedisTemplate
的序列化采用的是JdkSerializationRedisSerializer
,在存储到 Redis 的时候会将 对象 序列化为 字节数组
StringRedisTemplate
的序列化采用的是StringRedisSerializer
,适用于存储的 value 为 String 的情况
RedisTemplate的以字符串为中心的扩展。 由于针对Redis的大多数操作都是基于String的,因此该类提供了一个专用类,可以最小化其更通用的{@link RedisTemplate模板}的配置,尤其是在序列化器方面。
结论:
1、Redis 中存储对象使用 RedisTemplate
,存储字符串使用 StringRedisTemplate
更多参考:
1、关于RedisTemplate和StringRedisTemplate
https://blog.csdn.net/notsaltedfish/article/details/75948281