Springboot中@RequestParam和@PathVariable的用法与区别详解
@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的用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
基于java下载中getContentLength()一直为-1的一些思路
下面小编就为大家带来一篇基于java下载中getContentLength()一直为-1的一些思路。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧2017-06-06
JSON.toJSONString()空字段不忽略修改的问题
这篇文章主要介绍了JSON.toJSONString()空字段不忽略修改的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-02-02
Idea如何导入一个SpringBoot项目的方法(图文教程)
这篇文章主要介绍了Idea如何导入一个SpringBoot项目的方法(图文教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-09-09


最新评论