Springboot中@RequestParam和@PathVariable的用法与区别详解
作者:时间不会赖着不走
这篇文章主要介绍了Springboot中@RequestParam和@PathVariable的用法与区别详解,RESTful API设计的最佳实践是使用路径参数来标识一个或多个特定资源,而使用查询参数来对这些资源进行排序/过滤,需要的朋友可以参考下
@RequestParam和@PathVariable的用法
RESTful API设计的最佳实践是使用路径参数来标识一个或多个特定资源,而使用查询参数来对这些资源进行排序/过滤
@PathVariable
会用在单个对象的查询上,比如要根据ID值查询学生信息,就会在Postman发送GET请求,后台使用@PathVariable接收
后端是
@RequestMapping(value="/page/{name}/{age}",method=RequestMethod.GET) public String getName(ModelMap map,@PathVariable("name") String name,@PathVariable("age") int age) { map.addAttribute("name",name); map.addAttribute("age",age); return "name"; }
接口样式是
//localhost:8080/page/xiaoming/18
@RequestParam
会用在组合查询多个对象,比如跟据姓名模糊查询和性别组合查询筛选学生,就会发送POST请求,后台使用RequestParam接收 后端:
@RequestMapping(value="/result",method=RequestMethod.GET) public String resultParam(ModelMap map,@RequestParam String name,@RequestParam int age) { map.addAttribute("name",name); map.addAttribute("age",age); return "result"; }
接口样式:
//localhost:8080/result?name=xiaoming&age=20
区别
1、当URL指向的是某一具体业务资源(或资源列表),例如博客,用户时,使用@PathVariable
这个是举例是为了获取具体某一个缺陷或者用户的时候用
2、当URL需要对资源或者资源列表进行过滤,筛选时,用@RequestParam
到此这篇关于Springboot中@RequestParam和@PathVariable的用法与区别详解的文章就介绍到这了,更多相关@RequestParam和@PathVariable的用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!