在jersey 1.4版本中(至少这是我在网上找到的唯一参考资料)有com.sun.jersey.api.client.WebResource
你可以使用Webresource.queryParams()发送参数列表...似乎该方法不再存在于jersey-client 2.x ...我想它仍然可以做到这一点(无需手动拼凑查询字符串)? WebTarget类有一个方法:
public WebTarget queryParam(String name, Object... values);
但没有queryParams()方法。
答案 0 :(得分:4)
多次调用queryParam()。如
target.queryParam("foo", "fooValue").queryParam("bar", "barValue");
如果你有地图,你可以遍历条目:
for (Map.Entry<String, Object> entry : map.entrySet()) {
target = target.queryParam(entry.getKey(), entry.getValue());
}
答案 1 :(得分:2)
您可以使用public WebTarget queryParam(String name, Object... values);
方法:
target.queryParam("foo", "fooValue", "barValue", "anythingElseValue");
如果你已经有了List,只需将它作为普通数组传递:
List<String> list = new ArrayList<>();
list.add("foo");
list.add("bar");
target.queryParam("foo", list.toArray());