相同点
这两个都是用来处理前端传递过来的请求参数
不同点
不同的是RequestParam
处理的是请求参数
,而PathVariable
处理的是路径变量
这样说更容易理解,RequestParam是
将对应请求路径下的请求参数值映射到处理器参数上
而PathVariable
是将请求路径变量的值映射到处理器参数上
直接上例子
http://localhost/mdeditor/chen?id=39
//将请求参数映射到处理器参数上
@RequestMapping("/mededitor/chen")
public String getId(@RequestParam( value="id",requested=false)String Pid){
return id;
}
//会输出39
//如下,设置chen为路径变量
http://localhost/mdeditor/chen
//将请求的路径变量,映射到处理器参数中
@RequestMapping("/mededitor/{page}")
public String getId(@PathVariable( value="page",requested=false) String Page){
return page;
}
//会输出chen
//同时,在路径变量名和处理器参数名一致的时候,我们可以省去PathVariable中的value值,如下
http://localhost/mdeditor/cc
@RequestMapping("/mededitor/{page}")
public String getId(@PathVariable String page){
return page;
}
//输出cc