处理映射请求地址为完整地址的注解。
- 用于类上,表示类中的所有响应请求方法的公共路径前缀。
- 用于方法上,表示方法的请求地址
参数 |
描述 |
value |
指定请求的实际地址,指定的地址可以是URI Template 模式,请求地址保存在列表中,可以指定多个地址,用逗号分隔;
value的uri值为以下三类:
|
method |
指定请求的method类型, GET、POST、PUT、DELETE等 |
consumes |
指定处理请求的提交内容类型(Content-Type),例如@RequestMapping(value = ”/test”, consumes=”application/json”)处理application/json内容类型 |
produces |
指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回; |
params |
指定request中必须包含某些参数值是,才让该方法处理 |
headers |
指定request中必须包含某些指定的header值,才能让该方法处理请求 |
@RequestMpapping有以下衍生注解:
衍生注解 |
说明 |
@GetMapping |
Get请求,等价于@RequestMapping(method = RequestMethod.GET) |
@PostMapping |
Post请求,等价于@RequestMapping(method = RequestMethod.POST) |
@PutMpapping |
Put请求,等价于@RequestMapping(method = RequestMethod.PUT) |
@DeleteMpapping |
Delete请求,等价于@RequestMapping(method = RequestMethod.DELETE) |
示例
@RequestMapping("/index")
public void findOrd(String name)
{
// implementation omitted
}
//仅处理请求中包含了名为“name”,值为“zhangsan”的请求
@RequestMapping(value = "user/login", method = RequestMethod.GET, params="name=zhangsan")
public void findOrd(String name) {
// implementation omitted
}
//仅处理request的header中包含了指定“Refer”请求头和对应值为“www.baidu.com”的请求
@RequestMapping(value = "user/register", method = RequestMethod.GET,
headers="Referer=www.baidu.com")
public void findOrd(String name)
{
// implementation omitted
}
示例
@Controller
@RequestMapping("/user")
public class MainController {
@RequestMapping(value = "/login", method = RequestMethod.GET,
headers="Referer=www.baidu.com")
public void findOrd(String name)
{
// implementation omitted
}
@RequestMapping(value = "/register", method = RequestMethod.GET,
headers="Referer=www.baidu.com")
public void findOrd(String name)
{
// implementation omitted
}
}