繁体   English   中英

Redisson:有没有办法对特定包中的类使用不同的编解码器,而不是全局配置的编解码器?

[英]Redisson: Is there a way to use different codec for classes in specific packages instead of the globally configured one?

在我当前的项目中,Redisson 用于使用 JsonJacksonCodec 缓存许多不同的类。 这按预期工作,但我只想使用 MsgPack 序列化某个包中的类,而将其余类按原样进行序列化。

根据我的发现,这可以通过配置 RObject ( https://github.com/redisson/redisson/wiki/16.-FAQ#q-can-i-use-different-encoderdecoders-for-different-tasks ) 或使用 CompositeCodec 但在第一种情况下,在我看来,我仍然只能提供一个编解码器来重新配置配置,并且需要以不同方式配置的多个实例才能实现我的目标,而在第二种情况下,CompositeCodec 用于链接多个一个接一个地将编解码器放在一起,而不是对不同的类使用不同的编解码器。 不幸的是,高级 Redisson 使用的文档和示例都很少,所以我不确定我对这些结论中的任何一个是否正确。

有没有一种简单的方法可以实现这一目标,最好的方法是什么?

每个 redisson 对象都可以提供自己的编解码器。

Map 对象的代码示例:

RMap<String, String> map = redisson.getMap("myMap", new MyCodec());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM