Java 如何从POST请求中获取Json格式的对象列表

Java 如何从POST请求中获取Json格式的对象列表,java,json,jersey,Java,Json,Jersey,我想在dropwizard中获得包含Java/Jersey中对象列表的内容JSON正文 以json主体为例 { "tag1" : "value", "parameter" : [ { "name":"value1", "content":"value2" }, { "name":"value1", "content":"value2"

我想在dropwizard中获得包含Java/Jersey中对象列表的内容JSON正文

以json主体为例

{
    "tag1" : "value",
    "parameter" : [ 
        {
            "name":"value1",
            "content":"value2"
        },
        {
            "name":"value1",
            "content":"value2"
        }
                ]
}
我试着按要求接收请求

  @POST
  @Consumes(MediaType.APPLICATION_JSON)
  @Produces(MediaType.APPLICATION_JSON)
  public Response insertJob(
      @PathParam("tag1")
          String tag1,
      @JsonProperty("parameter")
          List<RequestParameter> parameter
  ) {

    return Response.ok(parameter).build();

  }
以及

@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
  public Response insertJob(
          List<RequestParameter> parameter
  ) {
    return Response.ok(parameter).build();

  }
@POST
@使用(MediaType.APPLICATION_JSON)
@产生(MediaType.APPLICATION_JSON)
公共响应插件作业(
列表参数
) {
返回Response.ok(参数).build();
}

我能够接收列表中的内容。如果列表中有标记,如何获取内容?为请求创建一个pojo类

[ 
    {
        "name":"value1",
        "content":"value2"
    },
    {
        "name":"value1",
        "content":"value2"
    }
                    ]
    import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.List;

public class Job {

    private String tag1;

    @JsonProperty("parameter")
    private List<RequestParameter> parameters;

    public String getTag1() {
        return tag1;
    }

    public void setTag1(String tag1) {
        this.tag1 = tag1;
    }

    public List<RequestParameter> getParameters() {
        return parameters;
    }

    public void setParameters(List<RequestParameter> parameters) {
        this.parameters = parameters;
    }
}


public class RequestParameter {

    private String name;
    private String content;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }
}
这是输出


谢谢,干得好。JSON正文中缺少一个逗号。对不起。看看我修改过的答案:)
@Path(value = "/job")
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Response insertJob(
        Job test
) {
    return Response.ok(test).build();

}