-
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。
用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径。 -
@RequestMapping属性
1、 value、method
value: 指定请求的实际地址,指定的地址可以是URI Template模式;
method:指定请求的method类型:(HTTP协议规定)GET、POST、PUT、DELETE、HEAD、OPTIONS、PATCH等;2、 consumes、produces
consumes:指定接收的处理请求的提交内容类型(Content-Type);
produces: 指定返回的内容类型,仅当request请求头中包含该指定类型才返回, Content-Type:text/html; charset=UTF-8;3、 params、headers
params: 指定request中必须包含某些参数值 。
* param:请求必须带上指定参数 例:@RequestMapping(path="/hello",params = {"username=123"})
正确请求为:http://localhost:8070/springmvc_day01_01_start/haha/hello?username=123
* !param:请求不可以带上某个参数 例:params = {"!username"}
* param!=value:请求所带参数值不可以等于value 例:params = {“username!=123”}
* {“param1”,"!param2",“param3!=value”} :请求必须满足集合中的多个参数规则headers: 指定请求头,request中必须包含某些指定的header值。
-
@RequestMapping的模糊查询
1 2 3 4 | ?:替换一个字符,例: @RequestMapping("/hello?") 注意:0个和多个都不行 (模糊和精确情况下,精确匹配优先) * :替换多个字符或者一层路径,例:@RequestMapping("/a/*/hello ") ** :替换多层路径,例:@RequestMapping("/a/**/hello") |
- @RequestMapping 路径占位符@PathVariable 可以占一层路径
1 2 3 4 5 | @RequestMapping(path="/hello/{id}") public String MyPathRequest(@PathVariable("id") String id){ System.out.println(id+"入门成功"); return "success"; } |