用@RequestMapping映射请求
DispatcherServlet接受一个web请求之后,将请求发送给@Controller注解声明的不同控制器类。
这个调度过程依赖控制器类及其处理程序方法中声明的各种@RequestMapping注解。
Spring MVC中,web请求通过控制器类中声明的一个或者多个@RequestMapping注解映射到处理程序。
处理程序映射根据与上下文路径(Web应用上下文路径)和servlet路径(映射到DispatcherServlet的路径)的相对路径匹配URL。
使用@RequestMapping注解的最简单的策略是直接修饰处理程序方法。为此需要用包含URL模式的@RequestMapping注解声明每个处理程序方法。
如果方法的@RequestMapping注解匹配请求的URL,DispatcherServlet将请求发往这个方法处理。
@Controller
控制类
@Autowired
控制反转生成控制类的实例
@RequestMapping("/member/add")
方法1
@RequestMapping(value={"/member/remove", "/member/delete"}, method=RequestMethod.GET)
方法2
另外一种
@Controller
@RequestMapping("/member/*")
控制类
@Autowired
控制反转生成控制类的实例
@RequestMapping("add")
方法1
@RequestMapping(value={"remove","delete"}, method=RequestMethod.GET)
方法二
@RequestMapping("display/{user}")
方法三(@RequestParam("memberName") String memberName, @PathVariable("user") String user)
@RequestMapping
方法四
方法五
对于方法三,如果接受的请求形式为/member/display/jdoe,方法将以jdoe值访问user变量
对于方法四使用了@RequestMapping注解,但是缺少URL值,因为类级别使用了/member/* URL通配符,这个处理方法作为全能的方法执行。
任何URL请求(例如/member/abcdefg或/member/randomrout)都会触发这个方法。
最后一个方法没有@RequestMapping注解,意味着这个方法是一个工具,对于Spring MVC没有影响。
按照HTTP请求类型映射请求
默认情况下,@RequestMapping注解假定所有的入站请求为HTTP GET类型。但是当入站请求是另一种HTTP类型,就有必要在@RequestMapping注解中明确指定的类型。
@RequestMapping (method = RequestMethod.POST)
public String submitForm (@ModelAttribute ("member") Member member, BindingResult result, Model model) {
……
}
用@RequestMapping映射请求的更多相关文章
- SpringMVC之使用requestMapping映射请求、映射参数、映射头
1. 映射请求 作用:使用requestMapping可以指定处理器可以处理那些请求 地方:类和方法前面都可以 @requestMapping 类定义处: 提供初步的请求映射信息,相对于web应用的根 ...
- SpringMVC之使用 @RequestMapping 映射请求
@RequestMapping注解 SpringMVC使用该注解让控制器知道可以处理哪些请求路径的,除了可以修饰方法,还可以修饰在类上. – 类定义处:提供初步的请求映射信息.相对于 WEB 应用的根 ...
- @RequestMapping映射请求,@PathVariable,@RequestParam,@RequestHeader的使用
1.@RequestMapping Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,在控制器的类定义及方法定义处都可标注. @RequestMa ...
- SpringMVC学习 -- 使用 @RequestMapping 映射请求
在控制器的类定义及方法出定义出都可以标注 @RequestMapping: 类定义处:提供初步的请求映射信息.相对于 Web 应用的根目录. 方法定义出:提供进一步的细分映射信息.相对于类定义处的 U ...
- SpringMVC使用注解@RequestMapping映射请求
pringMVC通过使用@RequestMapping注解,实现指定控制器可以处理哪些URL请求. 控制器的类定义及方法定义处都可以标注@RequestMapping: 类定义处:提供初步的请求映射信 ...
- SpringMVC听课笔记(三:使用@RequestMapping映射请求)
1. Spring MVC使用 @RequestMapping 注解为控制器指定可以处理哪些URL请求 2. 标注点: --类定义处:提供初步的请求映射信息.相对于WEB应用的根目录 --方法处:提供 ...
- @RequestMapping映射请求
1.SpringMVC使用@RequestMapping注解为控制器指定可以处理哪些URL请求. 2.在控制器的类定义和方法定义处都可标注@RequestMapping 2.1 类定义处:提 ...
- 使用 @RequestMapping 映射请求
- 【SpringMVC】SpringMVC系列2之@RequestMapping 映射约束请求
@RequestMapping 映射约束请求 2.1.映射请求URL Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,在控制器的类定义及方法定义 ...
随机推荐
- Sql Server 检测死锁的SQL语句
首先创建一个标量值函数DigLock,用来递归检测SqlServer中的每一个会话是否存在加锁循环,如果该函数最终返回1则表示检测到了加锁循环 (也就是说检测到了死锁),如果最终返回0则表示没有检测到 ...
- 不小心rm删除文件怎么办
不小心rm删除文件怎么办 rm 命令的副作用越来越显现.而且rm掉之后的东西想找回来很困难.有2个原则: 1 永远不要在root下操作,尤其是rm命令 2 写一个别名,代替rm 我就是在~/.bash ...
- Sed文本替换一例
使用 Sed 完成文本替换操作任务是非常合适的. 现在, 假设我要将一个原有 Java 项目中的一些包及下面的类移到另一个项目中复用. Project javastudy: Packages: alg ...
- NEON在Android中的使用举例【转】
转自:http://blog.csdn.net/fengbingchun/article/details/37766607 版权声明:本文为博主原创文章,未经博主允许不得转载. 1. 打开Eclip ...
- Binary Tree Level Order Traversal II
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...
- linux添加somebody到组
添加xiluhua到组:test_group usermod -a test_group xiluhua
- Hibernate API申明事务边界
在Hibernate API中,Session和Transaction接口提供了以下声明事务边界的方法: 声明事务的开始边界: Transaction tx = session.beginTransa ...
- PHP程序员如何突破成长瓶颈
PHP因为简单而使用,但不能因为它的简单而限制我们成长!文章给PHP工程师突破成长瓶颈提了一些建议,希望PHPer能够突破自己,有更好的发展. AD: 作为Web开发中应用最广泛的语言之一,PHP有着 ...
- OperService.class.php
<?php class OperSerVice{ public function getResult($num1,num2,oper){ switch($oper){ case "+& ...
- 局域网 其它主机ping不通win7, 解决
默认情况下,Windows 7出于安全考虑不允许外部主机对其进行Ping测试. 允许ICMP回显 设置如下: 1. 打开win7防火墙设置界面 2. 左边的菜单中选择 [高级设置] 3. 在弹出的 [ ...