SpringMVC完全教程:URL表达式与REST风格支持
需积分: 9 165 浏览量
更新于2024-08-18
收藏 2.65MB PPT 举报
"本文档主要介绍了Spring MVC框架中通过URL限定进行请求映射的方法,包括Ant风格和占位符的使用。同时,提到了Spring MVC 3.0的新特性以及框架的基本结构和工作流程。此外,还展示了如何使用注解来定义控制器和处理方法的映射。"
在Spring MVC中,`@RequestMapping`注解是用于映射HTTP请求到处理方法的关键工具。它不仅支持标准的URL路径,还支持Ant风格的匹配模式和带占位符的URL。Ant风格匹配允许更灵活的URL设计,如`*`表示任意字符,`??`表示两个任意字符,而`**`表示任意数量的目录层次。
例如:
- `/user/*/createUser`:这个URL表达式会匹配任何以`/user/`开头,后面跟着任意单个字符串,然后是`/createUser`的请求,如`/user/aaa/createUser`或`/user/bbb/createUser`。
- `/user/**/createUser`:这个表达式则更宽松,可以匹配`/user/createUser`或`/user/any/subdir/createUser`,其中`any`和`subdir`可以是任意字符串。
- `/user/{userId}`:这种模式下,`{userId}`是一个占位符,匹配固定格式的URL,如`/user/123`或`/user/abc`,`userId`的值可以在处理方法中获取。
- `/user/**/{userId}`:这个模式更复杂,匹配如`/user/aaa/bbb/123`这样的URL,其中`aaa`和`bbb`是任意字符串,`{userId}`则对应`123`。
Spring MVC 3.0引入了许多新特性,如对RESTful风格URL的支持,更多的注解驱动功能,HTTP输入输出转换器(HttpMessageConverter),与数据转换、格式化和验证框架的集成,对静态资源处理的优化,以及控制器方法签名的灵活性,使其可以完全独立于Servlet API。
在实际应用中,例如`UserController`的示例,通过`@Controller`注解标记类为控制器,`@RequestMapping(" /user ")`将该类映射到`/user`路径。然后,`@RequestMapping(value = "/register")`注解在`register()`方法上,表示该方法将处理所有以`/user/register`为路径的HTTP请求,并返回逻辑视图名`"user/register"`,通常这个逻辑视图名会被解析成实际的视图,如JSP页面。
整个Spring MVC框架的结构围绕`DispatcherServlet`展开,它负责调度请求。`HandlerMapping`用于映射请求到相应的处理器,`HandlerAdapter`则适配处理器方法,处理请求并返回`ModelAndView`对象,包含模型数据和视图信息。`ViewResolver`进一步解析逻辑视图名到具体视图,如JSP、XML或PDF。整个过程中,模型数据会绑定到视图,以便呈现给用户。
Spring MVC通过灵活的URL映射和注解驱动,提供了强大的Web应用程序开发能力,使得开发者能够构建出高效、模块化的Web应用。
2018-04-26 上传
2014-01-27 上传
2017-06-23 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2014-07-29 上传
2015-04-23 上传
744 浏览量
Happy破鞋
- 粉丝: 13
- 资源: 2万+
最新资源
- AJAX开发简略.pdf
- PowerBuilder8.0中文参考手册.pdf
- struts2.0+hibernate3.1+spring2.0的使用.doc
- VB中与串口通讯需要用到的控件介绍
- cpu卡基础知识与入门方法
- c++ TR1 文档
- 虚拟键盘的驱动程序 制作虚拟键盘的过程和
- MRPII-最经典的教材
- GRAILS中文开发PDF文档
- c++ 小游戏 程序
- 深入浅出Struts2.pdf
- 网络工程师英词典 网工英语词汇表.pdf
- Ubuntu实用学习教程
- Linux.C++.Programming.HOWTO
- QTP初级使用手册QTP8_Tutorial_oldsidney_cn
- 注册表概述精华及普遍误区