转自:https://blog.youkuaiyun.com/xyc_csdn/article/details/71941336
留作记录
/**
* Created by xyc on 2017/5/14 0014.
*/
@Controller
@RequestMapping("/path")
public class PathController {
/**
* 测试发现/methodA/{param1}/{param2}可以通过,/methodA/{param1}则报错
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value={"/methodA/{param1}","/methodA/{param1}/{param2}"})
public String methodA(@PathVariable("param1") Integer param1,@PathVariable("param2") Integer param2){
return "methodA success:param1="+param1+",param2="+param2;
}
/**
* 测试发现/methodB/{param1}/{param2}和/methodB/{param1}都可以通过
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value={"/methodB/{param1}","/methodB/{param1}/{param2}"})
public String methodB(@PathVariable(value = "param1",required = true) Integer param1,@PathVariable(value = "param2",required = false) Integer param2){
return "methodB success:param1="+param1+",param2="+param2;
}
/**
* 测试发现/methodC/{param1}/{param2}可以通过,/methodC/{param1}则报错
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value="/methodC/{param1}/{param2}")
public String methodC(@PathVariable(value = "param1",required = false) Integer param1,@PathVariable(value = "param2",required = false) Integer param2){
return "methodC success:param1="+param1+",param2="+param2;
}
/**
* 测试发现/methodD/{param1}/{param2}可以通过,/methodD/{param1}则报错
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value="/methodD/{param1}/{param2}")
public String methodD(@PathVariable(value = "param1",required = true) Integer param1,@PathVariable(value = "param2",required = false) Integer param2){
return "methodD success:param1="+param1+",param2="+param2;
}
/**
* 测试发现/methodE/{param1}/{param2}/suffix可以通过,/methodC/{param1}/suffix和/methodC/suffix则报错
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value="/methodE/{param1}/{param2}/suffix")
public String methodE(@PathVariable(value = "param1",required = false) Integer param1,@PathVariable(value = "param2",required = false) Integer param2){
return "methodE success:param1="+param1+",param2="+param2;
}
/**
* 测试发现/methodF/{param1}/{param2}/suffix可以通过,/methodD/{param1}/suffix和/methodD/suffix则报错
* @param param1
* @param param2
* @return
*/
@ResponseBody
@GetMapping(value="/methodF/{param1}/{param2}/suffix")
public String methodF(@PathVariable(value = "param1",required = true) Integer param1,@PathVariable(value = "param2",required = false) Integer param2){
return "methodF success:param1="+param1+",param2="+param2;
}
}
还有其他情况,请转看出处