Spring MVC 路径匹配原则详解 Spring MVC 中的路径匹配原则是指在配置拦截器时,使用 `<mvc:mapping/>` 子标签指定需要拦截的路径。该标签的 `path` 属性用来指定需要拦截的路径,例如 `<mvc:interceptor><mvc:mapping path="/" /><bean class="com.i360r.platform.webapp.runtime.view.interceptor.GenericInterceptor" /></mvc:interceptor>`,这样配置的拦截器将拦截所有的请求。 Spring MVC 中的路径匹配要比标准的 web.xml 要灵活的多。默认的策略实现了 `org.springframework.util.AntPathMatcher`,使用了 Apache Ant 样式的路径,这种路径模式有三种通配符匹配方法: * `?` 匹配任何单字符 * `*` 匹配 0 或者任意数量的字符 * `` 匹配 0 或者更多的目录 这些通配符可以组合出很多种灵活的路径模式,例如: * `/app/*.x` 匹配所有在 app 路径下的 .x 文件 * `/app/p?ttern` 匹配 `/app/pattern` 和 `/app/pXttern`,但是不包括 `/app/pttern` * `//example` 匹配 `/app/example`、 `/app/foo/example` 和 `/example/app` * `//*.jsp` 匹配任何的 .jsp 文件 HandlerMapping 是 Spring MVC 中的一个核心组件,负责将 URL 映射到相应的 Controller 中。Spring MVC 提供了多种方式来映射 URL 和 Controller 之间的关系,并且允许用户自己创建映射规则和实现。 Spring MVC 的默认实现 `org.springframework.web.servlet.handler.AbstractUrlHandlerMapping` 会以最长符合路径模式来匹配一个路径。例如,给定一个请求是 `/app/dir/file.jsp`,现在存在两个路径匹配模式 `//*.jsp` 和 `/app/dir/*.jsp`,那么,URL 会匹配那个模式?最后的那个模式 `/app/dir/*.jsp`,会因为最长的原则被匹配,它比 `//*.jsp` 拥有更多的字符。 BeanNameUrlHandlerMapping 是 Spring MVC 中的一个默认的映射策略实现,它要求任何有可能处理请求的 Bean 都要起一个以反斜杠(/)字符开头的名称或者别名,这个名称或者别名可以是符合 URL Path 匹配原则中的任何名字。 例如,下面的 XML 代码定义了一个名为 `/home` 的 Controller: ```xml <bean name="/home" class="com.apress.expertspringmvc.flight.web.HomeController"> <property name="flightService" ref="flightService" /> </bean> ``` 注意,不能使用 `id` 属性来指定任何的 URL 路径,因为在 XML 规格定中禁止使用 `/` 字符来指定 XML 的 `id`,不过可以在一个 Bean 定义中同时拥有 `id` 和 `name` 属性。




















- 粉丝: 4
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 光纤通信通信入门技术.ppt
- 健康医疗大数据产业现状、趋势及标杆分析.pptx
- 机群系统中的高效全交换算法------.pdf
- 移动互联软件开发赛项规程.doc
- 2023年春季计算机网络专业专科实践活动方案.doc
- 向城市中坚致敬麟恒中心广场网络营销方案.pptx
- 农村信用联合社网络监控管理方案.doc
- 基于网络的远程主机故障诊断的研究与设计.doc
- 人工神经网络和其应用专家讲座.pptx
- 很棒华三云计算管理平台图文.pptx
- 项目工程管理5-1-2双代号网络计划.pptx
- 孩子沉迷网络怎么办.docx
- 微信小程序开发实例:豆瓣电影应用制作
- 数据结构与算法课程设计报告教学计划编制.pdf
- 计算机信息技术基础练习题及答案许骏.docx
- 2023年试谈电子商务竞赛规程.doc


