是否可以将方法映射到具有ID和参数的URL路径的方法调用?例如: 的 HTTP://本地主机/ WS / UpdateUser两个/ 32332名=约翰PSW = 123
public void updateUser(Sting name,String psw){..}
似乎当前的@PathParam注释仅支持路径中的参数,例如: 的的http://本地主机/ WS / UpdateUser两个/ 32332 /约翰/ 123
答案 0 :(得分:4)
尝试使用@QueryParam
捕获name
和psw
参数: -
public void updateUser(@QueryParam Sting name, @QueryParam String psw) {
..
}
答案 1 :(得分:0)
您可以在一个方法中组合@QueryParam和@PathParam:
@GET
@Path("/user/{userId}")
public ShortLists getShortListsOfUser(@PathParam("userId") String userId,
@QueryParam("pageNumber") Integer pageNumber,
@QueryParam("pageSize") Integer pageSize,
@Context UriInfo uriInfo) {
/*do something*/
}
此方法匹配http://localhost/api / user / 222?pageNumber = 1& pageSize = 3
使用UriBuilder运行此方法时,请注意使用queryParam:
URI uri = getBaseUriBuilder().path("/user/user111").queryParam("pageSize", 2)
.queryParam("pageNumber", 3).build();
这不起作用: getBaseUriBuilder()。path(“/ user / user111?pageSize = 2& pageNumber = 3”)。build(); (因为构建器将%3F 替换为问号)