1、@PathVariable
@PathVariable绑定RequestMapping中url传递过来的值
@Controller
@RequestMapping("/goods/{goodsId}")
public class GoodsController {
@RequestMapping("/shop/{shopId}")
public void findPet(@PathVariable String goodsId, @PathVariable String shopId, Model model) {
}
}
上面代码中,通过@PathVariable注解将@RequestMapping中URL带的goodsId、shopId的值绑定到方法参数上。若方法参数名称和需要绑定的uri 中的变量名称不一致,需要在@PathVariable(“name”)指定uri template中的名称
2、@RequestHeader @CookieValue
@RequestHeader,看名称就知道是请求头,该注解可以把Request请求头的值绑定到方法参数上
以下是一个Reuqest Header
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate, sdch, br
Accept-Language:zh-CN,zh;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Cookie:JSESSIONID=FFCC9B129CD67F6BF0BDC6B46909885D
Host:localhost:8080
绑定请求头Accept的值到方法参数accept上
@Controller
public void CatchRequestHeader(@ReqeustHeader("Accept") String
accept){
}
@CookieValue可以将Request Header中关于cookie的值绑定到方法参数上
@Controller
public void CatchCookie(@CookieValue("SESSIONID") String cookie){
}
3、@RequestParam @RequestBody
@RequestParam和request.getParameter(“”)一样,是springmvc后台控制层获取参数的方式,用来处理简单类型的绑定