@RequestMapping注解是springmvc中常用的注解,它是用来处理请求映射地址的注解,可以用于类或方法上,用于类上时,表示该类中的方法后以该地址为父路径。
value:指定请求的地址,地址可以分为三类
@RequestMapping(value= {"/index"})
public String index() {
return "index";
}
//ownerId即为变量,若请求地址为“/index/admin”,即变量id值为admin
@RequestMapping(value="/index/{id}", method=RequestMethod.GET)
public String findOwner(@PathVariable String id) {
return "index";
}
@RequestMapping("/spring-web/{symbolicName:[a-z-]+}-{version:\\d\\.\\d\\.\\d}{extension:\\.[a-z]+}")
public void handle(@PathVariable String version, @PathVariable String extension) {
// 代码部分省略...
}
} method:指定提交请求的方式,有GET,POST等
示例
@RequestMapping(value= {"/index"},method=RequestMethod.POST)
public String index() {
return "index";
} consmues:指定处理请求的提交内容类型(Content-Type),例如application/json, text/html,请求类型与指定类型不同时,将无法请求
示例
@RequestMapping(value= {"/index"},method=RequestMethod.POST,consumes="application/json")
public String index() {
return "index";
}produces:指定返回的内容类型,请求头的Accept中要包含该类型,才可以返回
示例
@RequestMapping(value= {"/index"},method=RequestMethod.POST,produces="application/json")
public String index() {
return "index";
}params:表示request请求中必须包含某些参数,方法才会进行请求处理
示例
请求中必须包含username这个参数,方法才会对请求进行处理
@RequestMapping(value= {"/index"},method=RequestMethod.GET,params="username")
public String index() {
return "index";
}headers: 指定request中必须包含某些指定的header值,才能让该方法处理请求。
示例
请求头中的 referer需与 “http://www.baidu.com/”一样
@RequestMapping(value = "/pets", method = RequestMethod.GET, headers="Referer=http://www.baidu.com/")
public void findPet(@PathVariable String ownerId, @PathVariable String petId, Model model) {
// implementation omitted
}
}原文:https://www.cnblogs.com/hamawep789/p/10849818.html