@RequestMapping注解
阅读数:106 评论数:0
跳转到新版页面分类
python/Java
正文
一、概述
@RequestMapping注解是一个用来处理请求地址映射的注解,可用于映射一个请中一个方法 ,可以用在类或方法上。
二、@RequestMapping的属性
@RequestMapping的value属性是必设值,它可以是一个字符串数组,即可以将多个请求映射到一个方法 上。
@Controller
public class RequestMappingController {
@RequestMapping(value = {"/testRequest","/test"})
public String testRequest(){
return "success";
}
}
请求方式有很多GET HEAD POST PUT PATCH DELETE OPTIONS TRACE,可以使用method属性来约束请求方式。
@Controller
public class RequestMappingController {
@RequestMapping(value = "/testRequest",method = RequestMethod.GET)
public String testRequest(){
return "success";
}
}
如果想要支持多种方式 ,可以在method属性中添加即可,中间用英文逗号分隔。
@RequestMapping(value = "/i",method ={RequestMethod.GET,RequestMethod.POST} )
这些方法还有对应简写的注解:@GetMapping @PostMapping @PutMapping @DeleteMapping
params属性是通过当前请求参数来匹配请求,它是一个字符串类型的数组,可以通过下面几种表达来设置匹配关系。
"param" | 要求请求映射的请求必须为包含 param的请求参数 |
"!param" | 要求请求映射的请求是不能包含param的请求参数 |
"param=value" | 要求请求映射的请求必须包含 param 的请求参数,且 param 参数的值必须为 value |
"param!=value" | 要求请求映射的请求是必须包含 param 的请求参数,其值不能为 value |
@RequestMapping(value = "/test",params = "username")
public String test(){
return "success";
}
headers属性是通过当前请求的请求头信息来匹配请求,它是一个字符串的数组,可以通过下面几种表达来设置匹配关系。
"header" | 要求请求映射的请求必须为包含 header的请求头信息 |
"!header" | 要求请求映射的请求必须为不包含 header的请求头信息 |
"header=value" | 要求请求映射的请求必须为包含 header的请求头信息,并且header的值必须为value |
"hader!=value" | 要求请求映射的请求必须为包含 header的请求头信息,并且header的值必须不是value |
@RequestMapping(value = "/test",headers = "Host = localhost:8081")
public String test(){
return "success";
}