【发布时间】:2012-07-29 15:33:15
【问题描述】:
{
vendors: [
{
vendor: {
id: 367,
name: "Kuhn-Pollich",
company_id: 1,
}
},
{
vendor: {
id: 374,
name: "Sawayn-Hermann",
company_id: 1,
}
}]
}
我有一个可以从单个“供应商”json 正确反序列化的供应商对象,但我想将其反序列化为 Vendor[],我只是不知道如何让杰克逊合作。有什么建议吗?
【问题讨论】:
-
这是无效的 JSON。
vendors有一个数组作为值,它有一个对象,并且单个对象有一个“供应商”属性,后面是一个裸露的顶级对象。即第二个vendor对象在数组中的单个对象中没有关联的属性。此外,属性名称不是字符串,它们需要在 JSON 中引用。我猜你输入错误的JSON?一个好的答案取决于您实际使用的是哪种 JSOn。 -
抱歉,让我更正 JSON -- 现在应该修复
-
您不能(或不想)拥有一个包含 List
的 Vendors 类? -
我是,但问题是 Vendor 对象嵌套为数组中每个对象的“vendor”属性,而不是对象本身。这意味着我必须有一个带有 VendorWrapper 列表的 Vendors 类,其中每个 VendorWrapper 都包含一个 Vendor。我现在有了这个设置,但不太理想。
标签: java json serialization jackson