我得到了以下值对象:
@XmlRootElement
public class Movie{
public String name;
public Date releaseDate;
public List<Actors> actors;
}
我得到了以下服务
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Movie> moviesByYear(int year){
//return all movies by year
}
通过一些 ORM 框架在数据库中搜索电影。我的问题是:我想过滤响应,不返回 Actor 列表(因为该字段不相关,并使响应更大)。我当然可以
for(Movie movie: movies){
movie.actors = null;
}
但如果我想删除多个字段,这会迅速升级。
最佳答案
如果您不想在响应中包含 actors
字段,则可以使用 @XmlTransient
对该字段进行注释。请参阅JavaDoc了解更多详情。
否则,您可以将 Movie
对象包装到不公开 actors
字段的包装器对象中。
关于java - 如何过滤 JAX-RS 服务的响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11736643/