jackson将变量反序列化为Json字符串

我有这样的模型:

private String message; private Integer errorCode; private String data; 

我从远程和消息中获取JSON字符串,errorCode变量获取正确的值。 但是,我不想反序列化到我的数据变量。 我希望它像一个json字符串:

 {"cat": "1.2.3.4", "ner": "80", "name": "pinta" } 

之后,我将反序列化它以反对自己。 我怎样才能做到这一点?

PS:澄清问题:

我得到一个类似的Json字符串:

{“data”:{“cat”:“1.2.3.4”,“ner”:“80”,“name”:“pinta”},“message”:“m”,“errorCode”:12}

反序列化后,我的变量应具有以下值:

 message => "m" errorCode => 12 data => "{"cat": "1.2.3.4", "ner": "80", "name": "pinta" }" 

jackson问题596是为原始问题中描述的所需function而创建的。 如果你想要它实现它投票。

当前可用的解决方案是实现自定义反序列化处理。

另外, 如何使用Jackson在对象中包含原始JSON? 线程涵盖了这个主题。

我宁愿建议你让数据绑定到一个中间对象; 通常这是java.util.Maporg.codehaus.jackson.JsonNode (JSON Tree)。 然后您可以以任何方式访问数据; 包括使用ObjectMapper.convertValue(inputPojo, outputType)轻松转换为POJO。