首页 > 极客资料 博客日记
SpringBoot兼容SpringMVC带有.do后缀的请求
2024-09-07 22:00:03极客资料围观23次
文章SpringBoot兼容SpringMVC带有.do后缀的请求分享给大家,欢迎收藏极客之家,专注分享技术知识
背景
MVC框架请求的都是.do后缀,但controller控制层拦截的是没有后缀的链接。如controller请求/111/222,当请求/111/222.do时,可以正常进入。当我们将存量一些旧工程(SpringMVC框架)升级到Springboot后,发现无法进入,此处我们针对这块进行最丝滑的适配。
版本信息
Springboot:2.7.17
方案
- 1、请求方改造,将.do删除---除非该系统调用者很少,或者接口很少的情况
- 2、提供方改造,基于过滤器或者拦截器,拦截到.do后,重定向。--不推荐,所有do请求都会发生重定向
- 3、提供方改造,兼容.do请求---比较丝滑,推荐🌟🌟🌟🌟🌟
方案三详解
yaml增加后缀功能
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher
use-suffix-pattern: true
编码侧
/**
* @author weipt
* @description 受理.do请求,不发生302重定向
* @date 2024/9/6 23:09
*/
@Configuration
public class MyWebMvcConfigurer implements WebMvcConfigurer {
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
configurer.mediaType(".do", MediaType.ALL);
}
}
自测
- 后端写个controller,拦截/111/222
- 前端请求/111/222.do
- 如果能进入,就代表ok
拓展
关于DispatcherServlet
传统的MVC中,我们需要自定义DispatcherServlet,并设置拦截路径,比如*.do,但升级到Springboot后,启动的时候会默认创建DispatcherServlet,并拦截/**,所以我们需要再自定义DispatcherServlet,即使注册,日志中也会提示,这个大家可以观察
关于@EnableMVC注解
我们已经升级到Springboot,该注解已经不需要,反而加上后,会导致一些配置失效,慎用。
帮人帮到底,送佛送到西
如果上述操作,无法解决你的问题,可以与我联系:
邮件地址:weipingtao@qq.com
邮件标题:【问题方案咨询】xxxxx
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签:
相关文章
最新发布
- Nuxt.js 应用中的 prerender:routes 事件钩子详解
- 【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
- 六、Spring Boot集成Spring Security之前后分离认证流程最佳方案
- 《JVM第7课》堆区
- .NET 8 高性能跨平台图像处理库 ImageSharp
- 还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!
- 刚毕业,去做边缘业务,还有救吗?
- 如何避免 HttpClient 丢失请求头:通过 HttpRequestMessage 解决并优化
- 让性能提升56%的Vue3.5响应式重构之“版本计数”