@RequestMapping注解
@RequestMapping标识一个类:设置映射请求的请求路径的初始信息
@RequestMapping标识一个方法:设置映射请求请求路径的具体信息
@Controller
@RequestMapping("/test")
public class RequestMappingController {
//此时请求映射所映射的请求的请求路径为:/test/testRequestMapping
@RequestMapping("/testRequestMapping")
public String testRequestMapping(){
return "success";
}
}
@RequestMapping注解的value属性
@RequestMapping
注解的
value
属性是一个字符串类型的数组,表示该请求映射能够匹配多个请求地址所对应的请求
@RequestMapping
注解的
value
属性必须设置,至少通过请求地址匹配请求映射
@RequestMapping(
value = {"/testRequestMapping", "/test"}
)
public String testRequestMapping(){
return "success";
}
@RequestMapping注解的method属性
@RequestMapping
注解的
method
属性通过请求的请求方式(
get
或
post
)匹配请求映射
@RequestMapping
注解的
method
属性是一个
RequestMethod
类型的数组,表示该请求映射能够匹配多种请求方式的请求
若当前请求的请求地址满足请求映射的
value
属性,但是请求方式不满足
method
属性,则浏览器报错405:
Request method 'POST' not supported
@RequestMapping(
value = {"/testRequestMapping", "/test"},
method = {RequestMethod.GET, RequestMethod.POST}
)
注:
处理
get
请求的映射
-->@GetMapping
处理
post
请求的映射
-->@PostMapping
处理
put
请求的映射
-->@PutMapping
处理
delete
请求的映射
-->@DeleteMapping
@RequestMapping注解的params属性
"param"
:要求请求映射所匹配的请求必须携带
param
请求参数
"!param"
:要求请求映射所匹配的请求必须不能携带
param
请求参数
"param=value"
:要求请求映射所匹配的请求必须携带
param
请求参数且
param=value
"param!=value"
:要求请求映射所匹配的请求必须携带
param
请求参数但是
param!=value
@RequestMapping注解的headers属性
"header"
:要求请求映射所匹配的请求必须携带
header
请求头信息
"!header"
:要求请求映射所匹配的请求必须不能携带
header
请求头信息
"header=value"
:要求请求映射所匹配的请求必须携带
header
请求头信息且
header=value
"header!=value"
:要求请求映射所匹配的请求必须携带
header
请求头信息且
header!=value
SpringMVC支持ant风格的路径
?:表示任意的单个字符
*
:表示任意的
0
个或多个字符
**
:表示任意的一层或多层目录
注意:在使用
**
时,只能使用
/**/xxx
的方式
SpringMVC支持路径中的占位符
<a
th:href
=
"@{/testRest/111/user_admin}"
>
测试路径中的占位符
-->/testRest
</a><br>
@RequestMapping
(
"/testRest/{id}/{username}"
)