springmvc中注解@PathVariable和注解@RequestParam的区别

springmvc中 注解@PathVariable和注解@RequestParam的区别

这两个都是获取参数的注解

但是他们又一点重要的区别

@PathVariable  他获取参数是从地址栏获取

@RequestParam 而这个则是从请求中获取

如下面的代码片段

@RequestMapping("/order/{state}")
	public String conpaystate(String page,String pagesize,@RequestParam String userid,@PathVariable String state,HttpServletRequest request,HttpServletResponse response){

		return "member/index";
	}

有如下url

http://localhost:8080/LoveBN/useradmin/order/4?userid=1
从这个地址我们就可以得到如下信息

参数 state等于4

参数 userid等于1

注意,这两个参数必须存在

如果不存在@PathVariable,他有可能会跳转到其他controller,也有可能报错

如果不存在@RequestParam,页面直接返回404噢

其他参数,page或pagesize如果不存在,是没有关系的,后台可以进行处理


爆款云服务器s6 2核4G 低至0.46/天,具体规则查看活动详情Blog Img