@RequestMapping
:用来处理请求地址映射,可以用于类或方法上。 用于类上表示类中的所有响应请求的方法都是以该地址作为父路径。
@GetMapping
:
@GetMapping("/test")
相当于@RequestMapping(value = "/test", method = RequestMethod.GET)
;
@PostMapping
:
@PostMapping("/test")
相当于@RequestMapping(value = "/test", method = RequestMethod.POST)
;
@PutMapping
:
@PutMapping("/test")
相当于@RequestMapping(value = "/test", method = RequestMethod.PUT)
;
@PatchMapping
:
@PatchMapping("/test")
相当于@RequestMapping(value = "/test", method = RequestMethod.PATCH)
;
@DeleteMapping
:
@DeleteMapping("/test")
相当于@RequestMapping(value = "/test", method = RequestMethod.DELETE)
;
@RequestHeader
:将请求头的key-value键值对的value,绑定到controller方法的参数上。
@GetMapping("/test")
public void test(
@RequestHeader ("Host") String host,
@RequestHeader ("Accept-Language") String acceptLang
)
{
System.out.println("Host : " + host);
System.out.println("Accept-Language : " + acceptLang);
}
@PathVariable
:正则表达式风格的URL路径映射,可以指定模板变量的数据类型,可以将规则写的相当复杂。
@GetMapping("/user/{id}")
public void test(
@PathVariable("id") int id
)
{
System.out.println("user.id : " + id);
}
@RequestParam
:处理请求参数, 默认情况下,Spring会根据请求处理方法的形参名与请求参数名做对应,名字一样,可以将请求参数值传递给对应的形参。
value
: 参数名;required
: 此参数是否必须的. 默认为true
;defaultValue
: 当没有传递该参数时,使用该值;
@GetMapping("/test")
public void test(
@RequestParam int id,
@RequestParam("value") String name,
@RequestParam(value = "username", required = false) String username,
@RequestParam(value = "password", required = false, defaultValue = "123456") String password
) {
System.out.println("param.id : " + id);
System.out.println("param.name : " + name);
System.out.println("param.username : " + username);
System.out.println("param.password : " + password);
}
@RequestBody
:@PostMapping("/test")
public void test(
@RequestBody JSONObject json
) {
System.out.println("json : " + json.toString());
}
@PostMapping("/test")
public void test(
@RequestBody User user
) {
System.out.println("user : " + user.toString());
}
{id,name}
:@PostMapping("/test")
public void test(
@RequestBody Map<String, String> map
) {
System.out.println("map : " + map.toString());
}
[{id,name},{id,name},{id,name},...]
:@PostMapping("/test")
public void test(
@RequestBody List<User> list
) {
System.out.println("list : " + list.toString());
}
@RequestPart
:@CookieValue
: