java - 接受不同类型的 JSON 数组输入?

标签 java json rest jersey jax-rs

我有一个 JAX-RS/Jersey 项目,我想让我的客户变得更轻松。

目前服务的 POST 正文如下:

POST http://localhost:7101/account/2274321/pieces/
{
    "piePieceIds": [
        1
    ],
    "cakePieceIds": [
        2
    ],
    "splitName": "Split"
}

我可以使用将数组映射到输入对象

private List<Long> piePieceIds;
private List<Long> cakePieceIds;

这很好用。然而,一位客户要求做出改变,以使她的生活更轻松:

POST http://localhost:7101/account/2274321/pieces/
{
    "piePieceIds": [
        {
            "piePieceId": 1
        }
    ],
    "cakePieceIds": [
        {
            "cakePieceId": 2
        }
    ],
    "splitName": "Split"
}

如何对每个数组建模以获得正确的输入?

最佳答案

创建 POJO

public class PiecePie {
    private Long piePieceId;
    // getters and setters
}

并使用

private List<PiecePie> piePieceIds;

对其他字段执行相同的操作。

关于java - 接受不同类型的 JSON 数组输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23297685/

相关文章:

javascript - 如何使用 Rails 或 Javascript 提取 URL 内容

json - 如何从 Google Maps API 地理编码结果中过滤掉虚构的位置(例如 "under a rock"、 "hiding")?

java - 并发请求中rest api数据不匹配

web-applications - Web 应用程序的 RESTful 身份验证

java - Spring Boot 无法拦截执行器访问

java - 创建对象后,创建新对象会更改第一个对象的字段

javascript - 创建从 C# 到 JavaScript 的动态 JSON

api - REST API GET 方法

java - 如何从java调用jsp文件?

Java:ImageIcon - 图像文件更新,但 Java 框架中的图像图标不更新