您的位置:首页 > 编程语言 > Java开发

java.lang.IllegalStateException: Ambiguous handler methods mapped for ‘/emp/lisi‘: {public com.weiji

2020-07-07 14:46 483 查看

springboot 客户端访问controller时访问路径问题

@GetMapping("/emp/{id}")
public Employee getEmp(@PathVariable("id") Integer id){
Employee emp = service.getEmpById(id);
return emp;
}

方法一:根据id查询员工

@GetMapping("emp/{name}")
public Employee getEmpByName(@PathVariable("name") String name){
return service.getEmpByName(name);
}

方法二:根据name查询员工

错误原因:

可以看到是类型转换异常,主要是因为两个方法访问路径只有参数不同,在controller方法接收请求时没办法区分,不知道用哪个方法处理,这时当String类型注入Integer类型时就会发生类型转换异常,所以可以多加一层访问路径区分请求

@GetMapping("emp/lastName/{name}")
public Employee getEmpByName(@PathVariable("name") String name){
return service.getEmpByName(name);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐