目录
- @pathvariable与@requestparam碰到的一些问题
- 一、@pathvariable
- 二、@requestparam
- @PathVariable和@RequestParam的使用说明
@pathvariable与@requestparam碰到的一些问题
一、@pathvariable
可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {x} 占位符可以通过@PathVariable("x") 绑定到操作方法的入参中。
@GetMapping("/test/{id}")
public String test(@PathVariable("id") String id){
System.out.println("test:"+id);
return SUCCESS;
}
可以看出使用@pathvariable注解它直接从url中取参,但是如果参数是中文就会出现乱码情况,这时应该使用@requestparam注解
二、@requestparam
它是直接从请求中取参,它是直接拼接在url后面(demo?name=张三)
@GetMapping("/demo")
public String test(@requestparam(value="name") String name){
System.out.println("test:"+name);
return SUCCESS;
}
注:如果参数不必须传入的话,我们从源码中可以看出两者required默认为true,如图:
所以我们可以这样写,只写一个例子
@GetMapping("/demo")
public String test(@requestparam(value="name", required = false) String name){
System.out.println("test:"+name);
return SUCCESS;
}
@PathVariable和@RequestParam的使用说明
要说明@PathVariable和@RequestParam的使用,首先介绍 @RequestMapping
RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
RequestMapping:Annotation for mapping web requests onto methods in request-handling classes with flexible method signatures.Both Spring MVC and Spring WebFlux support this annotation.
RequestMapping注解有六个属性,常用的是value,method;还有consumes,produces,params,headers。
value属性:指定请求的实际地址,当只设置value属性时,默认省略不写
即:@RequestMapping("/hello")或@RequestMapping(value="/hello")
value的uri值为以下三类
- A)可以指定为普通的具体值;
- B)可以指定为含有某变量的值(URI Template Patterns with Path Variables);
- C)可以指定为含正则表达式的值( URI Template Patterns with Regular Expressions)。
HelloController.java极简代码示例,既有PathVariable也有RequestParam
@RestController
public class HelloController {
@RequestMapping("/hellopv/{name}")
public String helloPV(@PathVariable String name, @RequestParam String username) {
String hello = "Hello " + username + " [" + name + "] !";
return hello;
}
}
感性认识一下,测试上述代码http://cos6743:8081/hellopv/tom?username=YangTom
@PathVariable是处理requet uri template中variable 的注解,实现了url入参绑定到方法参数上。
即:可以获取URL请求路径中的变量值,比如:RequestMapping("/hellopv/{name}")中的name
@RequestParam获取URL请求数据,是常用来处理简单类型的绑定注解。
通过Request.getParameter()获取入参,故此可以处理url中的参数,也可以处理表单提交的参数和上传的文件。
拓展
handler method 参数绑定常用的注解,根据处理的Request的不同内容分为四类常用类型
- A、处理requet uri 部分(指uri template中variable)的注解: @PathVariable;
- B、处理request header部分的注解: @RequestHeader, @CookieValue;
- C、处理request body部分的注解:@RequestParam, @RequestBody;
- D、处理attribute类型是注解: @SessionAttributes, @ModelAttribute;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关推荐:
SEO快速提升SEO排名的有效策略:让你的网页飞跃搜索引擎,ai调色食物
SEO全套秘籍:提升网站流量与排名的终极指南,荣昌手机网站建设
seo用什么写属性写,seo属于什么 ,芭田科学施肥AI
如何选择适合你的AI工具?全面解析AI工具哪个好用
SEO优化攻略:如何通过精准策略提升网站排名与流量,aI ow翻译
seo读什么书,seo是哪个专业的 ,亚洲9ai吧
SEO搜外:全球搜索引擎优化的秘密武器,如何选择网站建设类型呢
怎么用AI写出高质量科普文章?揭秘新时代创作利器!
AI人工智能:改变未来的科技革命
SEO差价如何用SEO优化帮助企业实现成本与效益的完美平衡,盐城seo收费贵吗
什么是seo快排,seo快排方案 ,ai剪图形
AI优化文章:如何利用人工智能提升写作效率和质量
SEO大量优化:如何通过精准策略提升网站流量,突破搜索引擎排名瓶颈,吕梁本地网站推广平台
SEO但是,这些常见误区你真的知道吗?,凤岗网站建设开发
为什么“搜狗不收录”会成为企业SEO的新挑战?,烤肉店的线下营销与推广
优化,让生活与工作更高效-从个人到企业的全面升级,广州百度seo费用
一键创作,助你轻松实现创意梦想,最低价刷粉网站推广
AI一键生成文章免费版:颠覆写作新体验
seo网站关键字排名优化,网站seo关键词 ,运动ai
ChatGPT无法加载?检查您的网络设置并尝试重启,轻松解决常见问题!,ai招生广告设计
OpenAI银行卡扣款的公司是哪家?揭秘背后的支付流程与安全保障,AI素描相片
seo辅助词选什么,seo助手 ,各车企ai
SEO译为:网站排名背后的优化策略,会展中心网站优化
GPT-3模型下载:开启智能时代的无限可能,ai走入
SEO快排还有效果吗揭秘快速排名的真相与未来趋势,ai人像波普
ChatGPT免费版的限制:你需要了解的5大制约因素,Ai分解模型
GPT怎么收费?揭秘AI技术的定价与价值,ai报考高考
SEO技术如何通过优化提升网站流量与排名,四平网站优化公司
GPT-3.5可以免费使用吗?AI未来的无限可能,ai烧猪
seo需要什么器械,seo需要什么器械才能做 ,长续航ai纯电汽车
GoogleSEO打满分自然流量会高吗?揭开SEO优化的真相,猪插画ai
为什么要年前做SEO,企业为什么做seo推广 ,云南ai大数据公司
360ai问答-智能时代的全能助手,未来的智慧生活,ai生成白底
SEM有哪几个平台?数字营销的多元选择,AI怎么取消移动间距
为什么要seo 运营,为什么需要seo ,ai人物头盔
2025百度收录优化:提升网站排名,助力企业数字化转型,第一ai做
OpenAI账号申诉怎么办?全方位解析解决方案,ai写作免费公众号下载
中国AI软实力崛起:技术创新与产业应用的完美融合,seo0066
AI免费生成文章的软件:轻松创作的秘密武器
ChatGPT-深度学习与自然语言处理的革命性突破,金华ai视觉锁螺丝机
SEO关键词的选择步骤:让你的网站在搜索引擎中脱颖而出,ai书法化
优化标题:如何让你的文章更具吸引力与点击力,整站网站优化解决方案
AI提取文章重要内容:让信息抓取更高效、更精准,松鼠ai 教学
seo独立站是什么,独立站推广是什么 ,ai曲线笔刷扩展
SEO收集:如何通过有效数据收集提升网站排名,鞍山商城网站建设报价
京东业绩再创新高:未来电商巨头的成功之道,如何做seo优化留痕
ChatGPT360:全方位提升你的工作与生活效率,ai72787
ChatGPT宕机恢复时间如何解决用户焦虑与技术背后的故事,ai人工智能写作火山
AI提炼主要内容:如何让信息更精准、高效、易懂,女军人ai
SEO才能:提升网站排名,突破网络营销的核心竞争力,南宁本地seo营销公司