Java Redisson 集成
Java Redisson Integration
我有一个场景,我需要使用的数据结构是 Map<String,Map<String,List<String>>
。
并且我想使用 Redis 将此数据存储为内存缓存。
我感兴趣的一件事是,使子地图的 "key"(在本例中为 Map<String,List<String>>
)在 5 分钟后过期。
我在 Redis(Redisson 实现)中尝试过类似的东西,
RMap<String,Map<String,List<String>> parentMap = redisson.getMap("parentMap");
RMapCache<String,List<String>> childCache = redisson.getMapCache("childMapCache");
childCache.put("test",new ArrayList<String>(),5,TimeUnit.Minutes);
//Placing the child cache into parent map
parentMap.put("child",childCache);
但是当我这样做时,我收到以下错误消息(找出根本原因)
"unnotified cause: io.netty.handler.codec.EncoderException:
java.io.NotSerializableException: org.redisson.RedissonReference"
是否有解决方法可以将这样的数据结构导入 Redis?
当使用Java序列化或类似的编解码器时会发生此错误,现在已在 2.9.3 和 3.4.3 中修复。
我有一个场景,我需要使用的数据结构是 Map<String,Map<String,List<String>>
。
并且我想使用 Redis 将此数据存储为内存缓存。
我感兴趣的一件事是,使子地图的 "key"(在本例中为 Map<String,List<String>>
)在 5 分钟后过期。
我在 Redis(Redisson 实现)中尝试过类似的东西,
RMap<String,Map<String,List<String>> parentMap = redisson.getMap("parentMap");
RMapCache<String,List<String>> childCache = redisson.getMapCache("childMapCache");
childCache.put("test",new ArrayList<String>(),5,TimeUnit.Minutes);
//Placing the child cache into parent map
parentMap.put("child",childCache);
但是当我这样做时,我收到以下错误消息(找出根本原因)
"unnotified cause: io.netty.handler.codec.EncoderException:
java.io.NotSerializableException: org.redisson.RedissonReference"
是否有解决方法可以将这样的数据结构导入 Redis?
当使用Java序列化或类似的编解码器时会发生此错误,现在已在 2.9.3 和 3.4.3 中修复。