@RequestMapping
建立请求URL和处理请求方法之间的对应关系,可以放在类上或者方法上。
@RequestMapping("/account") //表示请求的一级目录
public class AccountController {
@RequestMapping("/findAccount") //表示请求的二级目录
public String findAccount() {
System.out.println("查询了账户。。。。 ");
return "success";
}
}
@RequestParam
用于获取绑定url的参数。
@RequestMapping("/useRequestParam")
public String useRequestParam(@RequestParam("name")String username, @RequestParam(value="age",required=false)Integer age) {
System.out.println(username+","+age);
return "success";
}
@RequestBody
用于获取绑定url的post请求体。
@RequestMapping("/useRequestBody")
public String useRequestBody(@RequestBody(required=false) String body){
System.out.println(body);
return "success";
}
@PathVariable
用于获取绑定url中的占位符
@RequestMapping("/usePathVariable/{id}")
public String usePathVariable(@PathVariable("id") Integer id){
System.out.println(id);
return "success";
}
@RequestHeader
用于获取绑定url的请求头
@RequestMapping("/useRequestHeader")
public String useRequestHeader(@RequestHeader(value="Accept-Language",required=false)String requestHeader){
System.out.println(requestHeader);
return "success";
}
@CookieValue
用于获取绑定url的请求的Cookie
@RequestMapping("/useCookieValue")
public String useCookieValue(@CookieValue(value="JSESSIONID",required=false) String cookieValue){
System.out.println(cookieValue);
return "success";
}
@ModelAttribute
表示该方法会在控制器所有方法之前执行
/**
* 被 ModelAttribute 修饰的方法,它将在testModelAttribute方法执行前执行。
* @param user
*/
@ModelAttribute
public void showModel(User user) {
System.out.println("执行了 showModel 方法"+user.getUsername());
}
/**
* 接收请求的方法
* @param user
* @return
*/
@RequestMapping("/testModelAttribute")
public String testModelAttribute(User user) {
System.out.println("执行了控制器的方法"+user.getUsername());
return "success";
}