文档章节

SpringMVC----RequestMapping映射请求

Rickxue
 Rickxue
发布于 2015/12/13 22:15
字数 634
阅读 134
收藏 2

    1.SpringMVC使用@RequestMapping注解为控制指定可以处理哪些URL请求。

    2.在控制器的类定义及方法定义处都可标注。

        @RequestMapping

        --类定义处:提供初步的请求映射信息。相对于WEB应用的根目录

        --方法处:提供进一步的细分映射信息。相对于类定义处的URL若类定义处未标注:@RequestMapping,则方法处标记            的URL相对于WEB应用的根目录。

     3.DispatcherServlet截获请求后,就通过控制器上@RequestMapping提供的隐射信息确定请求所对应的处理方法。

@RequestMapping("/hello")
@Controller
public class HelloWorld{
    
    @RequestMapping("/spingmvc")
    public String springmvc(){
        System.out.println("hello world");
        return "hello";
    }
}

 @RequestMapping除了可以使用请求URL映射请求外,还可以使用请求方法、请求参数及请求头映射请求

 @RequestMapping 的value、method、params及heads分别表示请求URL、请求参数及请求头的映射条件,他们之间是与的关系,联合使用多个条件可让请求映射更加精准化。

    4.params 和 headers支持简单的表达式:

    --param1:表示请求必须包含为param1的请求参数

    --!param1:表示请求不能包含名为param1的请求参数

    --param1!=value1:表示请求包含名为param的请求参数,但其值不能为value!

    --{"param1 = value1","param2"};请求必须包含名为param1 和 param2的两个请求参数,且param1参数的值必须为value1.

/**
	 * 使用method属性来制定请求方式
	 * header的用法类似。
	 * headers={"Accept-Language=zh-CN,zh;q=0.8"}
	 */
	@RequestMapping(value="/testParamOrHeaders",params={"username","password!=12345678"},method=RequestMethod.POST)
	public String testParamOrHeaders(){
		System.out.println("testParamOrHeaders");
		return SUCCESS;
	}
	
	
	/**
	 * 使用method属性来制定请求方式
	 */
	@RequestMapping(value="/testMethod",method=RequestMethod.POST)
	public String testMethod(){
		System.out.println("testMethod");
		return SUCCESS;
	}

 5.Ant风格资源地址支持3种匹配符:

       ?:匹配文件名中的一个字符 

        *:匹配文件名中的任意字符

        **:匹配多层路径

    @RequestMapping还支持Ant风格的URL:

        -- /user/*/createUser: 匹配/user/aaa/createUser、/user/bbb/createUser等

        -- /user/**/createUser:匹配/user/createUser、/user/aaa/bbb/createUser等

        -- /user/createUser??:匹配/user/createUseraa 、/user/createUserbb等URL

© 著作权归作者所有

共有 人打赏支持
Rickxue
粉丝 5
博文 43
码字总数 16647
作品 0
程序员
私信 提问
Spring mvc中@Requestmapping参数配置

原文标题[ Spring mvc中@Requestmapping再探] 1) 普通path路径 @RequestMapping(value = "/foos") @ResponseBody public String getFoosBySimplePath() { return "Get some Foos"; } 然后尝试......

guhai2004
2013/10/20
0
0
超详细 Spring @RequestMapping 注解使用技巧

@RequestMapping 是 Spring Web 应用程序中最常被用到的注解之一。这个注解会将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上。 在这篇文章中,你将会看到 @RequestMapping 注解在被用来...

oschina
2017/09/13
7.9K
9
Spring MVC 解读——@RequestMapping (1)

Spring MVC 解读——@RequestMapping 为了降低文章篇幅,使得文章更目标化,简洁化,我们就不例举各种@RequestMapping的用法等内容了. 文章主要说明以下问题: Spring怎样处理@RequestMappi...

麦壳原野
2014/03/25
0
13
RequestMapping & Trailing Slash & http 302

Spring-3.2.6 + tomcat6-maven-plugin 在做一个SpringMVC的小练习时发现的奇怪现象 先看下Controller tomcat的配置 然后简单的访问下 发现/editor请求返回了302,然后response的location重新...

路飞
2013/12/25
250
1
Spring注解(一) @RequestMapping @RequestParam @PathVariable

@RequestMapping 将 HTTP 请求映射到 MVC 和 REST 控制器的处理方法上 @RequestParam 从request请求中取值,例如当前请求http://localhost:8080/springMVC/helloworld?a=1&b=2 public String ......

勤奋的蚂蚁
2018/05/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Mysql(Mariadb)数据库主从复制

Mysql主从复制的实现原理图大致如下: MySQL之间数据复制的基础是以二进制日志文件(binary log file)来实现的,一台MySQL数据库一旦启用二进制日志后,其作为master,它数据库中所有操作都...

linux-tao
51分钟前
2
0
Mysql(Mariadb)数据库主从复制

Mysql主从复制的实现原理图大致如下: MySQL之间数据复制的基础是以二进制日志文件(binary log file)来实现的,一台MySQL数据库一旦启用二进制日志后,其作为master,它数据库中所有操作都...

Linux就该这么学
今天
2
0
Mysql(Mariadb)数据库主从复制

Mysql主从复制的实现原理图大致如下: MySQL之间数据复制的基础是以二进制日志文件(binary log file)来实现的,一台MySQL数据库一旦启用二进制日志后,其作为master,它数据库中所有操作都...

xiangyunyan
今天
2
0
Android 自定义Path贝塞尔曲线View实践——旋转的花朵

一、关于贝塞尔曲线 在工业设计方面贝塞尔曲线有很多用途,同样,在Android中,贝塞尔曲线结合Path类可以实现更复杂的图形,这里我们给一个案例,来实现一种旋转的花朵。对于贝赛尔曲线的理解...

IamOkay
今天
3
0
7、redis主从复制和sentinel配置高可用

一:redis主从配置 1、环境准备 master : 192.168.50.10 6179 slave1: 192.168.50.10 6279 slave2: 192.168.50.10 6379 2、redis.conf配置文件配置 master port 6179......

刘付kin
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部