Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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 如何使用@QueryParam(“列表”)最终列表从@get获取值<;MyDTO>;listDTO_Java_Rest_Jax Rs - Fatal编程技术网

Java 如何使用@QueryParam(“列表”)最终列表从@get获取值<;MyDTO>;listDTO

Java 如何使用@QueryParam(“列表”)最终列表从@get获取值<;MyDTO>;listDTO,java,rest,jax-rs,Java,Rest,Jax Rs,我有一个服务应该收到一个列表,在我的情况下,FaturamentoDTO。。。例: @GET @Path(value="/teste") @Produces(MediaType.APPLICATION_JSON) public List<FaturamentoDTO> teste(@QueryParam("list") final List<FaturamentoDTO> listFatsDTO) { for (Fatura

我有一个服务应该收到一个
列表
,在我的情况下,FaturamentoDTO。。。例:

    @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;
    }
@GET
@路径(value=“/teste”)
@产生(MediaType.APPLICATION_JSON)
公共列表测试(@QueryParam(“列表”)最终列表列表FATSDTO){
for(FaturamentoDTO f:列表FATSDTO){
//做我的事。。。
}
返回列表FATSDTO;
}
所以我的问题是,我如何发送和接收这些值

JAX-RS规范规定:

支持以下类型:

1基本类型

具有接受单个字符串参数的构造函数的2种类型

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

4列出、设置或分类数据集,其中T满足上述2或3


但即使使用构造函数,我也无法获得值。

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

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


GET

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


然后,您可以编写一个函数,将JSON解组到FaturamentoDTO中。我使用的是JAXB/MOXy,但这可以使用您选择的JSON处理库来完成。

使用POST没有问题。就像我打算使用Android异步Http客户端一样,我的url应该是://url参数:“users[][age]=30&users[][gender]=male&users[][age]=25&users[][gender]=female”
http://service?item={"foo" : "value1", "bar" : "value2"}&item={"foo" : "value3", "bar" : "value4"}