如何格式化Spring REST JSON输出

时间:2017-03-08 22:51:28

标签: json spring

我正在研究Java Spring REST API,它提供了类似这样的JSON输出:

{
    "speed1mbps": null,
    "speed10mbps": null,
    "speed100mbps": null,
    "speed1000mbps": null,
    "phone": null,
    "NAME": "some name",
    "STREET": "ST address",
    "city": "somecity",
    "state": "some state",
    "zip": "232409",
}

但是我需要格式化的JSON输出,如下所示。

{   
    speed:[
        1mbps:null
        10mbps:null
        100mbps:null
        1000mbps:null
        1000mbps:null
    ],
    "phone": null,
    "NAME": "some name",
    "STREET": "ST address",
    "city": "somecity",
    "state": "some state",
    "zip": "232409",
}

是否可以格式化JSON?请告诉我如何格式化JSON。

1 个答案:

答案 0 :(得分:0)

如果要根据需要格式化JSON,则需要创建自定义dto,请参阅下面的示例:

class Dto {
    private Map<String, String> speeds;
    private String phone;
    private String name;
    private String street;
    private String city;
    private String state;
    private String zip;
}

然后您可以以...等速度添加条目。

speeds.put("1mbps", null);
speeds.put("10mbps", null);
speeds.put("100mbps", null);
speeds.put("1000mbps", null);

然后有效的JSON结果将是....

{   
    speeds:{
        1mbps:null,
        10mbps:null,
        100mbps:null,
        1000mbps:null,
        1000mbps:null
    },
    "phone": null,
    "NAME": "some name",
    "STREET": "ST address",
    "city": "somecity",
    "state": "some state",
    "zip": "232409",
}

这是您应该返回REST响应的类。