有没有人知道如何使用Jackson注释从JSON请求获取对象列表?我认为正确的请求看起来像这样:
{
"movieName": "test",
"actors": [
{
"name" : "Adam",
"birthDate" : "20-10-2015"
}
]
}
Actor.java
public class Actor {
//...
@JsonProperty(value = "name")
private String name;
@JsonProperty(value = "birthDate")
private String birthDate;
//...
//getters and setters
}
Movie.java
public class Movie {
//...
private String movieName;
private List<Actor> actors;
//...
//getters and setters
}
在我的资源中,我使用内部类MovieResource.ResourceBody,其中包含有关请求的信息作为POJO。映射&#34; movieName&#34;像我预期的那样,但当我试图映射&#34;演员&#34;节点,响应是&#34;无法处理JSON&#34; HTML代码400(错误请求)。这是资源代码:
@Path("/movies")
@Produces("application/json")
public class MovieResource {
public static class RequestBody {
public RequestBody() {
}
public RequestBody(String movieName, List<Actor> actors) {
this.movieName = movieName;
this.actors = actors;
}
@JsonProperty("movieName")
private String movieName;
@JsonProperty(value = "actors")
private List<Actor> actors;
//getters and setters
}
//CRUD operations
}
哪里出错?我想尽可能地使用Annotations。
修改
一切都很好,经过测试后我感到昏迷,感谢@peeskillet