目录
- SpringMVC路径匹配中使用通配符
- @RequestMapping中指定的路径也可以使用通配符*
- 通配符不是只能放在最后的
- 通配符还可以匹配以某字符结束的路径
- 通配符还可以匹配以某字符开始的路径
- 同时存在路径变量和通配符匹配时的优先级关系
- 请求路径参数使用正则表达式
SpringMVC路径匹配中使用通配符
@RequestMapping中指定的路径也可以使用通配符*
表示任意字符。如下的处理器方法可以映射请求/antstyle/a,可以映射请求/antstyle/b,但是它不能映射请求请求/antstyle/a/b,因为它只能映射一级路径。
@RequestMapping("/antstyle/*")
public Object testAntStyle() {
return "antStyle";
}
通配符不是只能放在最后的
它也可以放在其它位置。下面的示例中就是把通配符放在中间位置,它可以映射请求/antstyle/a/bcd,也可以映射请求/antstyle/ab/bcd。
@RequestMapping("/antstyle/*/bcd")
public Object testAntStyle() {
return "antStyle";
}
通配符还可以匹配以某字符结束的路径
如下处理器方法可以映射/antstyle/后路径以bcd结尾的路径,比如/antstyle/abcd、/antstyle/bcd等。
@RequestMapping("/antstyle/*bcd")
public Object testAntStyle() {
return "antStyle";
}
通配符还可以匹配以某字符开始的路径
如下处理器方法可以映射/antstyle/abc、/antstyle/abcd等。
@RequestMapping("/antstyle/abc*")
public Object testAntStyle() {
return "antStyle";
}
一个星号只能匹配一级路径,如果需要匹配任意的多级路径则可以使用两个星号。如下处理器方法可以映射任何请求路径以/antstyle/开头的请求,如/antstyle/a、/antstyle/a/b等。
@RequestMapping("/antstyle/**")
public Object testAntStyle() {
return "antStyle";
}
一个星号与两个星号还可以一起使用,此时一个星号还是匹配任意字符,但是只能在当前层级,而两个星号还是可以匹配任意的层级,所以如下可以匹配/antstyle/abca/xxx/xxx等。
@RequestMapping("/antstyle/abc*/**")
public Object testAntStyle() {
return "antStyle";
}
请求映射路径中使用了通配符时,也还是可使用路径变量的,它们是相互独立的。如下代码中我们就在请求路径中同时使用了路径变量和通配符。
@RequestMapping("/antstylewithpathvariable/*/{path}/abc")
public Object testAntStyleWithPathVariable(@PathVariable String path) {
return "ant style with path variable, path is " + path;
}
同时存在路径变量和通配符匹配时的优先级关系
当一个请求路径可以匹配多个处理器方法时,SpringMVC将优先匹配路径映射更精确的那个。
- 拥有更少的路径变量和通配符的路径映射更精确。比如/hotels/{hotel}/*拥有一个路径变量和一个通配符,那么它会比/hotels/{hotel}/**更精确,会优先匹配,因为后者拥有一个路径变量和两个通配符。
- 如果两个路径映射的通配符数量是一样的,则指定的信息更多那个路径会更精确,比如/hotels/abc*比/hotels/*更精确。
- 路径变量比通配符更精确。比如/hotels/{hotel}比/hotels/*更精确。
- 默认映射/**比其它所有的路径映射的优先级都低,比如/{a}/{b}就比它更精确。
- 拥有两个通配符的路径映射比其它没有两个通配符的路径映射的优先级都低,比如/abc/**的优先级低于/abc/{a}。
(注:本文是基于Spring4.1.0所写)
请求路径参数使用正则表达式
@GetMapping("/user/{id:\\d+}") //使用正则指定Id为数字
public User getInfo(@PathVariable String id){
...
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
相关推荐:
SEO元素-提升网站排名的核心要素,推广分成网站有哪些
什么是蜘蛛弛?揭秘这个SEO优化背后的神秘工具,南沙seo优化排名价格
SEO优化排名原理解析:如何提高网站排名,实现精准流量获取,奥迪ai售价
提升写作效率,释放创意潜力文章生成AI软件的未来
如何识别文章是否由AI写作:技巧与方法解析
优化入口:提升网站流量与转化率的秘密武器,琼海关键词排名品牌
seo网络上什么意思,seo表示什么 ,如何避免今日头条ai写作检测
SEO到底怎么做?揭秘从零到精通的完整SEO优化攻略,鸟瞰ai
seo能解决什么问题,seo会遇到哪些问题 ,挚爱花嫁ai
SEO这样做,轻松引爆流量,助力企业成长,无极标准网站优化好处
ChatGPT免费用户每天的使用限制:如何高效利用,突破困境!,花花制作ai
什么是seo推广找行者SEO,seo推广效果怎么样 ,西宁ai万词霸屏系统
seo要公司什么资源,做seo需要用到什么软件 ,ai明星换了
SEO联系:如何通过SEO优化提升您的网络营销效果,企业营销推广获客
SEO招标:如何通过专业SEO服务助力企业脱颖而出,牡丹江关键词排名怎么样
一键创作,助你轻松实现创意梦想,最低价刷粉网站推广
ChatGPT支付时银行卡被拒绝?教你几招轻松解决问题!,国内ai换图
文章AI生成标题:让创作更轻松,内容更精彩
SEO占位:如何在竞争激烈的市场中占得先机?,梁平区省心全网营销推广
AI翻译工具的革命-ChatGPT等技术让语言互通无碍,淘宝ai写作检测准吗
ChatGPT的破解版:AI世界的新突破,ai无禁忌
2025百度收录优化:提升网站排名,助力企业数字化转型,第一ai做
seo规范是什么,seo行业标准 ,啊龙ai音乐
ChatGPT为什么页面下拉不了?问题解析与解决方案,ai对准
用AI优化文章,轻松提升内容质量与创作效率
如何用AI写公众号文章?让创作更高效、更轻松
ChatGPT您的应用遇到问题,无法正常启动?如何解决并重新体验智能助手的魅力!,男头ai关键词
如何用AI改文章,让写作更高效、精准,提升内容质量
京东业绩再创新高:未来电商巨头的成功之道,如何做seo优化留痕
《权重参谋:让您的网站轻松登顶搜索引擎的秘密武器》,设计微信社群私域营销推广简案
SEO站内优化:提升网站排名的核心策略,厦门市网站优化企业
Bing搜索的注意事项-提高搜索效率与准确性,轻松获取所需信息,最近ai写作软件推荐
为什么做酒店seo,为什么做酒店 ,ai uehara下载
文章AI指令提升写作效率的智能助手
Chatget免费网站版无需登录,畅享无限对话体验!,工业 Ai 视觉检测
SEO可以改变你的商业未来:如何通过优化提升网站流量和转化率,五粮液营销推广
ChatGPTCanvex打不开?详细分析及解决方法助你顺利使用,ai2.5d网格线去除
自动AI写文章:轻松创作时代的全新利器
ChatGPT4网页空白:重新定义智能交互的未来,怎么登ai
ChatGPT当前不可用?如何应对AI服务中断的挑战,ai文章免费写作app
AI免费文章解读:智能写作新篇章,小店AI
AI免费写文章生成器高效写作新革命
SEO优化10种策略:提升网站排名的有效方法,帅气ai男头白底
ChatGPT怎么打不开了?揭秘背后的原因与解决方法,ai中打开ai文件丢失
专业SEO方案助力企业网站流量暴增,精准引流不再是难题,网站建设合同4篇
二SEO是什么,h二seo三是什么 ,ai手术机
SEO优化引导新官网,助力企业迈向成功之路,宋轶ai换
“只能写作”:在创作的世界里,选择文字,就是选择自由,云南关键词排名推广报价
优化*:打造更加高效、创新的娱乐体验,石排网站建设制作多少钱
seo要懂些什么软件,seo常用软件 ,ai写作网站网址大全