一、@RequestHeader
1、使用@RequestHeader绑定请求报头的属性值
- 请求头包含了若干属性,服务器可据此获知客户端的信息,通过@RequestHeader即可将请求头中的属性绑定到处理方法的入参中。
/**
* 了解
* 映射请求头信息
* 用法同@RequestParam
* @param al
* @return
*/
@RequestMapping("/testRequestHeader")
public String testRequestHeader(@RequestHeader("Accept-Language")String al){
System.out.println("testRequestHeader,Accept-Language "+al);
return SUCCESS;
}
二、@CookieValue
使用@CookieValue绑定请求中的Cookie值
- @CookieValue可以让处理方法入参绑定到某个Cookie值
/**
* 了解:映射一个cookie值,属性同@RequestParam
* @param json
* @return
*/
@RequestMapping("/testCookieValue")
public String testCookieValue(@CookieValue("JSESSIONID") String json){
System.out.println("testCookieValue: "+json);
return SUCCESS;
}
三、POJO
使用POJO对象绑定请求参数值
- SpringMVC 会按请求参数名和POJO属性名进行自动匹配,自动为该对象填充属性值,支持级联属性。如:dept.deptId,dept.address.tel
/**
* SpringMVC 会按请求参数名和POJO属性名进行自动匹配,
* 自动为该对象填充属性值,支持级联属性。如:dept.deptId,dept.address.tel
* @param user
* @return
*/
@RequestMapping("/testPOJO")
public String testPOJO(User user){
System.out.println("testPOJO: "+user);
return SUCCESS;
}
四、Servlet
使用Servlet API作为入参
MVC的handler可以接受哪些Servlet API类型的参数:
- HttpServletRequest
- HttpServletResponse
- HttpSession
- java.security.Principal
- Locale
- InputStream
- OutputStream
- Reader
- Writer
/**
* 可以使用Servlet 原生的API作为目标方法的参数,具体支持以下类型
* HttpServletRequest HttpServletResponse HttpSession java.security.Principal
* Locale InputStream OutputStream Reader Writer
*
* @param request
* @param response
* @return
*/
@RequestMapping("/testServletAPI")
public String testServletAPI(HttpServletRequest request, HttpServletResponse response){
System.out.println("testServletAPI: "+request+","+response);
return SUCCESS;
}