Java 在Jersey 2中,为什么queryParams(地图)被从WebTarget拿走?

Java 在Jersey 2中,为什么queryParams(地图)被从WebTarget拿走?,java,jax-rs,jersey-2.0,jersey-client,Java,Jax Rs,Jersey 2.0,Jersey Client,我正在从Jersey的客户端API()1.x迁移到2.x,WebResource的queryParams(map)方法没有转移到WebTarget、它的构建器或它的调用。只有queryParam(key,value) 是否有其他方法添加多个参数?我没有添加列表,比如:以下面的方式调用API- target = target.queryParam("foo", "fooValue").queryParam("bar", "barValue"); 通过这种方式,您可以添加任意数量的查询参数。若你们

我正在从Jersey的客户端API()1.x迁移到2.x,WebResource的queryParams(map)方法没有转移到WebTarget、它的构建器或它的调用。只有queryParam(key,value)


是否有其他方法添加多个参数?我没有添加列表,比如:

以下面的方式调用API-

target = target.queryParam("foo", "fooValue").queryParam("bar", "barValue");
通过这种方式,您可以添加任意数量的查询参数。若你们有map,那个么只需迭代map并在循环中写这行代码


我认为删除map并使用这种方法背后的原因是queryparam可以包含多个具有相同名称和不同值的查询参数。但是,使用map无法实现同样的效果。

这是我必须做的,但是我很困惑,为什么API仍然有像header(map)这样的方法,但没有一个用于queryParams…@mojo-jojo我刚刚编辑了我的答案。希望现在一切都清楚了。对于标头,我们仍然可以使用map,因为HTTP请求不能包含重复的headersOk,这解释了为什么我看到一个使用多值map的实现。。。谢谢