Genson 主页上列出的功能之一是“具有复杂键的地图的序列化和反序列化”。
虽然我试图将带有 Keys 的映射作为复杂的 java 对象序列化为 json 字符串,然后将它们反序列化回 java Map。反序列化的映射键始终是字符串。有人可以帮我了解如何使用 genson 进行如此复杂的键映射序列化和反序列化吗?
这是我的代码
Genson genson = new GensonBuilder().useClassMetadata(true).useRuntimeType(true).create();
VO vo = new VO();
Key key = new Key(18314212, new Timestamp(System.currentTimeMillis()),new Timestamp(System.currentTimeMillis()));
vo.setEndTime(new Timestamp(System.currentTimeMillis()));
vo.setStartTime(new Timestamp(System.currentTimeMillis()));
vo.setItemID(18314212);
vo.setKey(key);
Map<Object, Object> map = new HashMap<Object, Object>();
map.put(key, vo);
String json = genson.serialize(map);
System.out.println(json); //the json map key does not have @Class attribute
Map jsonMap = genson.deserialize(json, Map.class);
System.out.println(jsonMap);