redisson中怎么实现缓存序列化

redisson中怎么实现缓存序列化,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

redisson缓存序列化几枚坑

1、返回值为Map<T, K> 的方法增加@Cacheable后,T和K被类型擦出了,为啥?

redisson结合Spring使用时,会有RedissonSpringCacheManager,将redissonClient自动注入,另外还有codec的概念,即序列化和反序列化,可以查看实现类,就几种实现,假设我们使用org.redisson.codec.JsonJacksonCodec,可以看到,decode中,仅一个Object.class,即范型信息并未带入,故出现了问题

redisson中怎么实现缓存序列化

2、对于匿名内部类的滥用导致反序列化失败

你会想,匿名内部类有什么影响?

那么跟着我看下我们时常会写的一种Map写法:

Map<String, Object> map = new HashMap(){{put("mykey", "test");}};

这种方式有什么问题呢,这就涉及到匿名内部类声明方式在实际编译时是如何存在于class文件中的

...
$1 extends HashMap{
    ...
}
...

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。