@RequestMapping注解

阅读数:106 评论数:0

跳转到新版页面

分类

python/Java

正文

一、概述

@RequestMapping注解是一个用来处理请求地址映射的注解,可用于映射一个请中一个方法 ,可以用在类或方法上。

二、@RequestMapping的属性

1、value属性

@RequestMapping的value属性是必设值,它可以是一个字符串数组,即可以将多个请求映射到一个方法 上。

@Controller
public class RequestMappingController {

    @RequestMapping(value = {"/testRequest","/test"})
    public String testRequest(){
        return "success";
    }
}

2、method属性

请求方式有很多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

3、params属性

params属性是通过当前请求参数来匹配请求,它是一个字符串类型的数组,可以通过下面几种表达来设置匹配关系。

"param" 要求请求映射的请求必须为包含 param的请求参数
"!param" 要求请求映射的请求是不能包含param的请求参数
"param=value" 要求请求映射的请求必须包含 param 的请求参数,且 param 参数的值必须为 value
"param!=value"  要求请求映射的请求是必须包含 param 的请求参数,其值不能为 value
@RequestMapping(value = "/test",params = "username")
    public String test(){
        return "success";
    }

4、headers属性

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";
    }



相关推荐