【问题标题】:Can you help me unmarshall this JSON object into a javabean?你能帮我把这个 JSON 对象解组成一个 javabean 吗?
【发布时间】:2012-03-02 03:26:56
【问题描述】:

我需要将以下 JSON 结构发送到我的 JAX-RS 服务。它嵌套了一个级别,如果这是正确的术语。

{
    "catalog" : [
        {"price":"100","sku":"123456"},
        {"price":"120","sku":"1234567"}
    ],
    "customer" : {"name":"joe smith","gender":"male","age":"29"}
}

如果不编写适配器,我的要求是否可行?我想问题归结为:目录和客户密钥。这是否意味着我需要两个 Javabean?对我来说另一个麻烦的部分是“目录”键的值。它是一个 JSON 对象数组。

我如何“豆化”它?

【问题讨论】:

  • json格式不对,应该是{ "catalog" : [{"price":"100","sku":"123456"},{"price":"120"," sku":"1234567"}], "customer" : {"name":"joe smith","gender":"male","age":"29"} };

标签: json javabeans jax-rs jackson


【解决方案1】:

您将需要两个 bean Item 和 Customer,该 item 可以聚合到一个列表中,该列表将创建 JSON 数组,并且 customer 属性保持原样。我主要与杰克逊映射器直接而不是 Jax-rs 一起工作,但它会是这样的。

public class Whatever {

    @JacksonProperty
    List<Item> catalog;

    @JacksonProperty
    Customer customer;

    //Getters and Setters

}

【讨论】:

    猜你喜欢
    • 2021-01-28
    • 2011-01-18
    • 2022-01-24
    • 2011-05-20
    • 2021-08-29
    • 2017-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多