Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解析/解组在Java中作为参数传递数组的查询字符串_Java_Url_Query String_Jersey_Kendo Ui - Fatal编程技术网

解析/解组在Java中作为参数传递数组的查询字符串

解析/解组在Java中作为参数传递数组的查询字符串,java,url,query-string,jersey,kendo-ui,Java,Url,Query String,Jersey,Kendo Ui,有没有一种方法可以解析/解组将数组作为Java中的参数传递到Map或自定义类中的查询字符串 URL示例: localhost:8080/app/ws/categories?take=10&skip=10&page=2&pageSize=10&filter[logic]=和&filter[filters][0][field]=公司id&filter[filters][0][operator]=eq&filter[filters][0][value]=1513 我需要像这样解析过滤器参数: 公共类过

有没有一种方法可以解析/解组将数组作为Java中的参数传递到Map或自定义类中的查询字符串

URL示例:

localhost:8080/app/ws/categories?take=10&skip=10&page=2&pageSize=10&filter[logic]=和&filter[filters][0][field]=公司id&filter[filters][0][operator]=eq&filter[filters][0][value]=1513

我需要像这样解析过滤器参数:

公共类过滤器{ 私有字符串逻辑; 私有列表过滤器; 公共类过滤器{ 私有字符串字段; 私有字符串运算符; 私有字符串值; } } 还有一点-我在这里使用Jersey,也许它可以使用Jersey的工具解析/解包@QueryParam


无论如何,任何其他Java解决方案都可以。

我建议两件事:

或者您想要执行GET,然后保持RESTful方法,我会有一个Url,如: localhost:8080/app/ws/categories?take/10/skip/10/page/2/pageSize/10/filter/logic/和/…等等


或者POST是可以接受的,我会发送JSON负载,我们可以使用JAXRS 2.0规范中的@BeanParam来完成

public PageableResponse<PatientBundleType> getPatientBundles(@BeanParam final PageableBeanParam paging)
{
    ...
}

public class PageableBeanParam
{
    public PageableBeanParam(@Context final UriInfo uriInfo)
    {

        for (Entry<String, List<String>> param : params.entrySet())
        {
            String key = param.getKey();
            String value = param.getValue().iterator().next();

            if ("pageSize".equals(key))
            {
                setPageSize(Integer.valueOf(value));
            }

            ...
        }
    }
}

即使它存在。。。如果没有大量的反射行,您将如何从标准Java代码中使用它?反射现在不是问题幸运的是,我买不起这个解决方案,因为我使用的是KendoUIGrid,它以指定的问题格式查询REST服务,由于某些原因,我无法修改它们的核心代码。我认为这不是RESTful方法@Dzmitry的格式是正确的。