Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.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/2/spring/14.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 如何映射同一类中的两个不同方法以在spring boot中获取请求?_Java_Spring_Spring Boot_Rest - Fatal编程技术网

Java 如何映射同一类中的两个不同方法以在spring boot中获取请求?

Java 如何映射同一类中的两个不同方法以在spring boot中获取请求?,java,spring,spring-boot,rest,Java,Spring,Spring Boot,Rest,我用spring boot在java中创建了一个REST API,但是当我尝试运行它时,我得到了一些错误,它已经将一个方法从一个控制器类映射到get方法,并且它无法映射另一个方法,即使它们有不同的名称。例:/drugs/filtered/{amount}和/drugs/report 这是密码 @RestController @AllArgsConstructor 公共类药物控制员{ 私人药房服务; 私人药物转换器; @RequestMapping(name=“/druges”,method=Re

我用spring boot在java中创建了一个REST API,但是当我尝试运行它时,我得到了一些错误,它已经将一个方法从一个控制器类映射到get方法,并且它无法映射另一个方法,即使它们有不同的名称。例:
/drugs/filtered/{amount}
/drugs/report
这是密码

@RestController
@AllArgsConstructor
公共类药物控制员{
私人药房服务;
私人药物转换器;
@RequestMapping(name=“/druges”,method=RequestMethod.POST)
公共药物到Handleaddrug(@RequestBody-DrugDTO-dto){
Drug addDrug=service.addDrug(
dto.getId(),
dto.getName(),
dto.getRecommendedAmount());
返回drugConverter.convertmodeltodo(addddrug);
}
@RequestMapping(name=“/druges”,method=RequestMethod.PUT)
公共药物到handleUpdateDrug(@RequestBody DrugDTO-dto){
药物更新=service.updateDrug(
dto.getId(),
dto.getName(),
dto.getRecommendedAmount());
返回drugConverter.convertmodeltodo(更新);
}
@RequestMapping(name=“/druges/{id}”,method=RequestMethod.DELETE)
公共药物到handleDeleteDrug(@PathVariable整数id){
Drug deletedDrug=service.deleteDrug(id);
返回drugConverter.convertmodeltodo(deletedddrug);
}
@GetMapping(name=“/druges/{id}”)
public DrugDTO HandleGetDruge(@PathVariable整数id){
Drug-Drug=service.getDrug(id);
返回drugConverter.convertmodeltodo(药物);
}
@GetMapping(name=“/druges”)
公共药品处理所有药品(){
Collection drugs=service.getAllDrugs();
返回新的drugsdo(drugs.stream().map(drugConverter::convertmodeltodo.collect(Collectors.toSet());
}
@GetMapping(name=“/druges/filtered/{amount}”)
公共药品待处理的药物剂量小于(@PathVariable Integer amount){
收集药物=服务。获取药物剂量大于(金额);
返回新的drugsdo(drugs.stream().map(drugConverter::convertmodeltodo.collect(Collectors.toSet());
}
@GetMapping(name=“/druges/report”)
公营药物处理药物{
Collection drugs=service.getDrugsWithDosesOf();
返回新的drugsdo(drugs.stream().map(drugConverter::convertmodeltodo.collect(Collectors.toSet());
}
}
这就是错误:


org.springframework.beans.factory.BeanCreationException:创建名为“requestMappingHandlerMapping”的bean时出错,该名称在类路径资源[org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]中定义:初始化方法调用失败;嵌套异常为java.lang.IllegalStateException:不明确映射。无法将'drugController'方法BloodManagement.ServerSide.Controller.drugController#HandleGetDruge(整数)映射到{GET[]}:已存在'drugController'bean方法BloodManagement.ServerSide.Controller.drugController#handleGetAllDrugs()已映射。

尝试将所有映射上的参数name更改为value

i、 e:

@GetMapping(name=“/druges”)
变成

@GetMapping(value=“/druges”)