关于RequestMapping,关于他的作用相信用过springMvc的都应该知道。
RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。
下面主要说一下他的几个属性:
1、value:指定请求的实际地址,指定的地址可以是URI Template 模式
value的uri值为以下三类:
A) 可以指定为普通的具体值;例如: @RequestMapping(value="XXX")
B) 可以指定为含有某变量的一类值(URI Template Patterns with Path Variables);例如:
@RequestMapping(value="{XXX}/{XXX}")
@RequestMapping(value="/users/{userId}", method=RequestMethod.GET)
C) 可以指定为含正则表达式的一类值( URI Template Patterns with Regular Expressions);
例如:
@RequestMapping("/spring-web/{symbolicName:[a-z-]+}-{version:\d\.\d\.\d}.{extension:\.[a-z]}")
2、method: 指定请求的method类型, GET、POST、PUT、DELETE等;
一般写法为例如:method = RequestMethod.DELETE ..等。
3、consumes:指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
一般写法为例如:consumes = "application/json"..等
4、produces:指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回
一般写法为例如:produces = "application/json"..等
5、params:指定request中必须包含某些参数值是,才让该方法处理。
例如: @RequestMapping(value="XXX",method=RequestMethod.GET,params="myParam=myValue")
意为:仅处理请求中包含了名为“myParam”,值为“myValue”的请求;
6、headers:指定request中必须包含某些指定的header值,才能让该方法处理请求。
@RequestMapping(value="XXX",method=RequestMethod.GET,headers="Referer=http://www.ifeng.com/")
意为:仅处理request的header中包含了指定“Refer”请求头和对应值为“http://www.ifeng.com/”的请求;
本文参考:http://blog.sina.com.cn/s/blog_72827fb10101pl9i.html
本文出自 “不羁的风” 博客,请务必保留此出处http://fengcl.blog.51cto.com/9961331/1706376
原文地址:http://fengcl.blog.51cto.com/9961331/1706376