【发布时间】:2020-10-31 11:34:18
【问题描述】:
当您想将对象序列化为 JSON 字符串时,通常会执行以下操作:
String json = objectMapper.writeValueAsString(myObject);
我想知道是否可以将对象直接序列化为java.util.Map 而不是字符串? IE。像这样的东西(伪代码):
String json = objectMapper.writeValueAs(myObject, new TypeReference<Map<String,Object>>() {});
我知道我可以先将对象序列化为字符串,然后将其反序列化为Map<String,Object>,但我想问是否有办法做到这一点首先序列化为字符串?
我使用的是 Jackson 2.11.1。
【问题讨论】:
-
您可能在查找搜索结果时遇到了一些麻烦,因为根据定义,序列化是转换为单个字节流,例如
String或byte[],而不是像这样的结构化对象Map。如答案所示,您只是在寻找“转换”。
标签: java json serialization jackson jackson-databind