@PathVariable、@CookieValue、@RequestHeader使用详解

1. @PathVariable绑定uri模板变量值

通过@PathVariable可以绑定占位符参数到方法参数中,例如:

@RequestMapping(value="/info/{uid}", method=RequestMethod.GET)
public User getUserById(@PathVariable Long uid) {
    
    
	return userService.getUserById(uid);
}

如果请求为"url/info/16",则spring会自动将16绑定到通过@PathVariable注解的同名变量uid上

2. @CookieValue绑定Cookie数据值

public String test(@CookieValue(value="SESSIONID", defaultValue="") String sessionId) {
    
    
	return sessionId;
}

自动将SESSIONID的值绑定到字符串sessionId上,如果Cookie中没有sessionId时则默认为空

传入数据类型也可以是javax.servlet.http.Cookie类型

public String test2(@CookieValue(value="SESSIONID", defaultValue="") Cookie sessionId){
    
    

}

3. @RequestHeader绑定请求头数据

@RequestMapping(value="/header")  
public String test(  
       @RequestHeader("User-Agent") String userAgent,  
       @RequestHeader(value="Accept") String[] accepts){
    
    

}

如上配置将自动将请求头中的“User-Agent"值绑定到userAgent上,将"Accept"的值绑定到accepts上

猜你喜欢

转载自blog.csdn.net/weixin_44860226/article/details/129632030