Jackson 处理 Map key 为对象的情况 | 您所在的位置:网站首页 › jackson序列化map › Jackson 处理 Map key 为对象的情况 |
当使用 jackson 序列化 Map< ObjectA, ObjectB> 对象时,ObjectA 默认会以 toString 的方式来序列化,而在反序列化时,则会直接失败。这个问题,该如何解决呢? jackson 提供额外的接口供我们扩展,网上以 2.x 版本为例的解决方案很多,1.x 的比较少,这里主要说 1.x 版本的解决方案。 在 jackson 里提供了 JsonSerializer 和 KeyDeserializer 抽象类,针对需要特殊处理的对象 ObjectA,提供对应的实现类,并调用 objectMapper.registerModule 方法注册进去即可。完整示例代码如下所示: public class JsonUtil { private final static ObjectMapper objectMapper = new ObjectMapper(); private final static JsonFactory jsonFac |
CopyRight 2018-2019 实验室设备网 版权所有 |