返回Restful webservices中的值列表

时间:2017-01-02 13:57:04

标签: java json rest

我正在研究一个小例子,我想从webservice返回值列表:

@GET
@Path("/string")
@Produces({"application/xml", "application/json"})
public List<String> test2()
{
    List<String> list = new ArrayList<String>();
    list.add("USA");
    list.add("EGYPT");
    return list;
}

我可以通过成功调用此服务来获得响应。

List list1 = client.target("http://localhost:8080/services/customers/string")
                   .request()
                   .accept(MediaType.APPLICATION_JSON)
                   .get(List.class);

它为我提供了[USA, EGYPT]

的数据

但似乎我们需要根据这篇文章使用GenericEntity - Jersey: Return a list of strings

或作为包装类 - How do return Java List<String> Json using Jax-RS

当我们需要使用这两个选项时?是否需要使用GenericEntity或Wrapper类?

我正在使用JAX-RS2.0和Jersey实现。

1 个答案:

答案 0 :(得分:0)

您的回复序列化由泽西岛实体提供商根据a specific algorithm完成。您应该在应用程序的上下文中有一个默认提供程序,支持List实例的序列化。因此,您不需要进一步包装。