JAX-RS:从url获取数组

时间:2013-03-28 11:35:48

标签: url jax-rs

我尝试拦截此网址中的参数

http://myapi.com/myobject?filter [0] [名称] =地点&安培;过滤[0] [值] = FR&安培;过滤[1] [名称] =类型&安培;过滤[0] [值] =真实。

如何在我的méthod上声明这个“过滤器”参数来获取所有这些地图值?

由于

1 个答案:

答案 0 :(得分:0)

我不认为它可以“自动”完成,我会做这样的事情:

@Path("/myobject")
@GET
public Response myMethod(@Context UriInfo uriInfo) {
     MultivaluedMap<String, String> queryParams = uriInfo.getQueryParameters(); 
     // parse the map keys
}

在queryParams地图中,您将拥有{"filter[0][name]" => location, filter[0][value] => FR, ...}键值对,您需要进一步解析。解析键可让您从查询中重建原始地图。这不是一段美丽的代码,但会起作用。