繁体   English   中英

使用 Jackson 数据绑定将 object 序列化为 Map 而不是字符串?

[英]Serialize object as Map instead of String using Jackson databind?

通常,当您想将 object 序列化为 JSON 字符串时,会执行以下操作:

String json = objectMapper.writeValueAsString(myObject);

我想知道是否可以将 object 直接序列化为java.util.Map而不是字符串? 即这样的东西(伪代码):

String json = objectMapper.writeValueAs(myObject, new TypeReference<Map<String,Object>>() {});

我知道我可以先将 object 序列化为字符串,然后将其反序列化为Map<String,Object>但我问是否有一种方法可以在先序列化为字符串的情况下做到这一点?

我正在使用 Jackson 2.11.1。

您可以使用 ObjectMapper 的convertValue方法将 Object 转换为 Map

Map<String, Object> map = objectMapper.convertValue(myObject, Map.class);

暂无
暂无

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

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