今天 玩 springMVC 发现一个特别有意思的 地方。 比如我这个项目, springMVC 匹配的路径 是 / 全路径,没有 和一般的项目一样,指定访问的 前后缀 比如:
springMVC org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath*:config/main/spring-mvc.xml 1 springMVC /
然后我再 访问的时候,,,
比如有一个 conller 方法: 匹配的路径是 :@RequestMapping({ "/index", "/" })
我以为 它会匹配 / 和 index . 可是如果我输入 /indexaaa 这样的 /index* 就会爆 404 错误。 如果 我 输入 /index.sss 这样的 /index.* 这样的 去访问 大部分是 匹配的还是 /index这个方法,可以匹配到的。 但是有一点,,, 如果是 /index.html 或者 /index.jsp 这样的就会 去访问 根目录下的 对应 index.jsp 或者 index.html 文件了,,,有就返回,没有就爆404 。。。 或者 /index/* 也匹配不到的 。 这个就是 springMVC 路径映射的 一个 特点吧,,, 难怪 一般项目 spring mvc 都指定了 /.html , /.do 这样的后缀,,, 刚开始 还以为的是为了 统一 管理后期好维护,,,估计 也是 因为 匹配的规则 的原因吧。