加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何配置Spring MVC DispatcherServlet以避免url带有扩展名?

发布时间:2020-12-15 01:29:20 所属栏目:大数据 来源:网络整理
导读:我有一个Spring(4.1.6.RELEASE)MVC项目,其中一个控制器映射到/ home,但我的问题是它也被调用用于/home.html或/home.do之类的路径 我的配置是: web.xml中: 主servlet.xml中:

我有一个Spring(4.1.6.RELEASE)MVC项目,其中一个控制器映射到/ home,但我的问题是它也被调用用于/home.html或/home.do之类的路径

我的配置是:

web.xml中:

   

主servlet.xml中:

   

HomeController.java:

@Controller
@RequestMapping({"/","/home"})
public class HomeController {  
   @RequestMapping(method = RequestMethod.GET)
   public String doGet(Model model) {
        // ...
        return "home";
    }
}

正如类似问题所示:

> Spring MVC; avoiding file extension in url?
> Spring MVC: Avoiding file extension in URL
> spring mvc how to bypass DispatcherServlet for *.html files?

我尝试添加以下配置:

   

   

但没有成功.

当我调试DispatcherServlet时,我可以看到RequestMappingHandlerMapping和DefaultAnnotationHandlerMapping的实例没有将上面的注释属性设置为false.

似乎一个简单的配置应该这样做,但我遗漏了一些我无法找到的东西.

我应该如何正确配置DispatcherServlet以避免映射路径中的文件扩展名?

提前致谢.

最佳答案
根据Spring doc,配置应该在mvc:annotation-driven下,例如

  

正如docs所述

Whether to use suffix pattern match (".*") when matching patterns to
requests. If enabled a method mapped to "/users" also matches to
"/users.*". The default value is true.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读