redis和session共享牵扯到了序列化器,所以找了找资料
Redis缓存用到了序列化,如果是存String就不需要用到序列化,但是如果需要存bean对象和集合对象,就必须要转序列化,这说几种
- JdkSerializationRedisSerializer:这个是spring-data-redis默认的序列化方式,如果不指定序列化方式,那么将用这个,对象存在redis会是二进制形式,而且很长,在redis可视化看到的也是一堆看不懂的东西,只能在操作者反序列化后才能看到真实的内容
好处:对于bean之类的只需要让它实现Serializable接口就行,反序列化只需要强转就好
对于集合就需要自己有个SerializeUtil(redis序列化工具)序列化把集合转成byte数组再存储,反序列化把byte转 成Object再强转成指定的对象
坏处:显而易见,无法在缓存中知道存储数据的类型和值,而且还很长,对于redis来说,短会更好 - Jackson2JsonRedisSerializer 还没用到,先放这
- GenericJackson2JsonRedisSerializer参考https://blog.youkuaiyun.com/u010180738/article/details/79383246