在Java中将对象列表发送到Rest服务

时间:2015-02-04 06:23:02

标签: java list rest jax-rs jersey-2.0

我有一个看起来像这样的休息api

    @POST
    @Path("/cities")
    @Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
    public Response createCity(City city) {
    }

上面工作正常。现在我想要另一个接受城市列表的服务。然后我创建了一个包含城市列表字段的包装器对象,类似这样的

 @XmlRootElement
    public class CityHolder {

        List<City> cities;
      ....................

   @POST
    @Path("/cities/list")
    @Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
    public Response createCities(CityHolder cityHolder) {
    }

以上对我来说很好。 我也在下面试过

        @POST
        @Path("/cities/list")
        @Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
        public Response createCities(List<City> cityList) {
        }

也可以。 有人可以告诉我发送对象列表的最佳做法。

1 个答案:

答案 0 :(得分:0)

我想说如果你只想发送列表,请使用对象列表。如果要使用列表发送其他提示,请使用包装对象。

在你的情况下,我更喜欢列表ifself。

希望它有所帮助, 亨利