两者都是获取请求参数,主要区别在于:
1.@PathVariable获取url路径中直接带有的参数,
浏览器访问:localhost:8080/hello/hi/100
@GetMapping("hi/{id}")//含有id
public String say(@PathVariable("id") Integer id){}在这里插入代码片
2.@RequestParam获取与路径分开传的参数;
访问:localhost:8080/hello/hi?id=100
@GetMapping("hi")//访问路径不含id
public String say(@RequestParam(value="id",required =false,defaultValue = "0") Integer id){}在这里插入代码片