当前位置: 首页 > 知识库问答 >
问题:

如何使用@ query param(" List ")final List < my dto > List dto从@GET获取值

景凌
2023-03-14

我有一个应该接收< code >列表的服务

    @GET
    @Path(value="/teste")
    @Produces(MediaType.APPLICATION_JSON)
    public List<FaturamentoDTO> teste(@QueryParam("list") final List<FaturamentoDTO> listFatsDTO) {
        for (FaturamentoDTO f : listFatsDTO) {
            // do my stuff...
        }
        return listFatsDTO;
    }

所以我的问题是,我如何发送和接收这些值。

JAX-RS规范说:

支持以下类型:

1原始类型

2具有接受单个String参数的构造函数的类型。

3个类型具有名为valueOf的静态方法,该方法带有单个字符串参数。

4列表、集合或排序集,其中T满足以上2或3。

但是即使有构造函数,我也不能得到值。

共有2个答案

甄霖
2023-03-14

查询参数对复杂的数据结构没有任何特定的支持,因此您需要自己实现它。我遇到了类似的情况,最终使用数据的JSON表示作为查询参数值。例如(请注意,JSON应该是URL编码的,但我省略了它以使其可读)

http://service?item={"foo" : "value1", "bar" : "value2"}&item={"foo" : "value3", "bar" : "value4"}

然后您可以编写一个< code>ParamConverter

符国安
2023-03-14

如果您发送的不是简单的字符串,我建议使用带有适当请求主体的POST。然而,GET必须是可能的。

您的客户如何发送请求?您的客户应发送对应于以下内容的请求:

得到http://example.com/services/teste?list=item1

 类似资料:
  • 我正在使用重新保证的框架,在它里面,它有JsonPath类。JsonPath有一个getList的方法签名(String path,Class T); 我试图做这样的事情: 我得到了一个运行时强制转换异常。那么,调用它的正确格式是什么呢。我还试图: 这也失败了。实际上编译失败了。

  • 问题内容: 我有一个带有一些GET参数的URL,如下所示: 我需要获得的全部价值。我尝试读取该URL,但只有。如何使用JavaScript执行此操作? 问题答案: JavaScript 本身 没有内置处理查询字符串参数的内容。 在(现代)浏览器中运行的代码可以使用对象(它是浏览器提供给JS的API的一部分): 对于较旧的浏览器(包括Internet Explorer),您可以使用此polyfill

  • 我想通过改型从get api获得响应,但我不知道如何检查,因此在给定完整代码和api响应的下面显示空响应, 我的回应是: 我的接口类: POJO: 下面是MainActivity类中的调用方法: 上面给出了完整的代码,但它显示空响应,因为我不知道如何检查和改装中的数据数组对象。 所以请谁能解释一下如何在改装中检查它。 谢谢。

  • 我使用Spring Jdbc进行查询。我需要从数据库中执行select,但是我不知道表中有多少列可以从resultset中获得结果(例如,对于< code>RowMapper)。我想获得<代码>列表

  • 我在实时数据库中有以下数据: 实时数据库 我想获得 当我用这个的时候 错误: E/flutter(27654):[ERROR: flutter/lib/ui/ui_dart_state.cc(166)]未处理的异常:类型_InternalLinkedHashMap 我的范例: 我的问卷模型:

  • 问题内容: 如何简单地通过JQuery 获取和值? 我想做的是这样的: 问题答案: 对于GET参数,您可以从中获取它们: 对于POST参数,您可以将JSON格式的对象序列化为标记: 在进行此操作(在服务器端执行操作)时,也可以在PHP上收集GET参数: 注意: 您需要PHP 5或更高版本才能使用内置功能。 更新: 这是一个更通用的实现: