首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SpringBoot Web开发-URL匹配规则

我们在开发Web应用程序时,并不总是使用一些默认的配置。 有时,我们要创建包含字符“.”的RESTful风格的URL。“.”字符在Spring作为分隔符定义格式,例如/projects/spring-boot.json中的“点”或者我们可能想识别路径尾部的斜杠,如/home/等。

虽然Spring Boot选择默认禁用后缀模式匹配,但是Spring为我们提供了对这些问题提供了一种轻松的实现。

配置

自定义URL匹配规则,有两种常用的方式实现:

1、继承抽象类WebMvcConfigurerAdapter,重写configurePathMatch方法

2、继承WebMvcConfigurationSupport,重写configurePathMatch方法

上述两种方式的核心都是:

configurePathMatch(PathMatchConfigurer configurer)函数,让开发人员可以根据需求定制URL路径的匹配规则。

setUseSuffixPatternMatch(boolean useSuffixPatternMatch)

设置是否是后缀模式匹配,true即匹配,如“/user”是否匹配/user.*。

当此参数设置为true时,那么/user.json,/user.xml,/user.*都能是正常访问的。

当此参数设置为false时,那么只能访问/user或者/user/(这个前提是setUseTrailingSlashMatch设置为true了)。

setUseTrailingSlashMatch(boolean useSuffixPatternMatch)

设置是否是后缀路径模式匹配,true即匹配,如“/user”是否匹配“/user/”。

当此参数设置为true时,那么地址/user,/user/都能正常访问。

当此参数设置为false时,那么就只能访问/user了。

当以上两个参数都设置为true时,那么路径/user或者/user.json,

/user.*,/user/都是能正常访问的,。

当以上两个参数都都设置为false时,那么就只能访问/user路径了。

总结

抽象类WebMvcConfigurerAdapter与WebMvcConfigurationSupport都可以配置MVC, WebMvcConfigurerAdapter有的WebMvcConfigurationSupport都有。即,因此建议使用WebMvcConfigurationSupport。

参考

SpringBoot Reference:

https://docs.spring.io/spring/docs/5.0.4.BUILD-SNAPSHOT/spring-framework-reference/web.html#mvc-config-path-matching

https://docs.spring.io/spring/docs/5.0.4.BUILD-SNAPSHOT/spring-framework-reference/web.html#mvc-ann-requestmapping-suffix-pattern-match

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180219G0013B00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券