Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.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 如何开发一个接受多个URI的RESTWebService方法_Java_Rest - Fatal编程技术网

Java 如何开发一个接受多个URI的RESTWebService方法

Java 如何开发一个接受多个URI的RESTWebService方法,java,rest,Java,Rest,例如,如何开发一个接受多个URI的RESTWebService方法 如果我们有办法 @RequestMapping(/add) public Response add(@RequestParam List elements){ } 上述方法用于URL主机:8080/add 我在采访中问过,我们如何有一个单一的Web服务来服务多个URI,我无法回答,因为我认为每个方法都应该有唯一的URI 接下来我们将介绍一个方法,该方法返回postman客户端选择的JSON、XML、纯文本格式 修改URI

例如,如何开发一个接受多个URI的RESTWebService方法

如果我们有办法

@RequestMapping(/add)
 public Response add(@RequestParam List elements){
  }
上述方法用于URL主机:8080/add

我在采访中问过,我们如何有一个单一的Web服务来服务多个URI,我无法回答,因为我认为每个方法都应该有唯一的URI

接下来我们将介绍一个方法,该方法返回postman客户端选择的JSON、XML、纯文本格式

修改URI:

@RequestMapping(value = "/", produces = {
            MediaType.APPLICATION_JSON_VALUE,
            MediaType.APPLICATION_XML_VALUE
            })
public Response add(@RequestParam List elements){

}

对于第一个问题,有很多方法可以做到这一点 SpringRestTemplate允许您在另一个方法中调用rest服务,所以您所要做的就是在请求另一个uri时调用rest服务 您还可以使用代理web服务器代理将同一web服务映射到多个URI

对于第二个,您需要将format作为参数传递,并在执行时调用链接到format的特定服务


希望对您有所帮助

请看一看您应该能够使用@RequestMappingpath={/add,/delete},并且您可以包含products={application/json,text/xml}。我们需要逐个添加所有媒体类型吗。我们没有像MediaType.ALL或MediaType.any这样的单一选项吗?对于所有类型,请删除。我认为您需要它,所以如果我删除products,那么它就不一定接受postman客户端的任何媒体类型。您可以使用consumes定义要接受的数据类型否我要接受任何类型的数据。我应该使用产品还是消费品