RequestMapping註解
阿新 • • 發佈:2019-05-11
json baidu c中 pre name str imp spring 處理
1、簡介
@RequestMapping
註解是springmvc中常用的註解,它是用來處理請求映射地址的註解,可以用於類或方法上,用於類上時,表示該類中的方法後以該地址為父路徑。
2、屬性
value:指定請求的地址,地址可以分為三類
1、指定具體的路徑
@RequestMapping(value= {"/index"}) public String index() { return "index"; }
2、指定為含有某變量的一類值(URI模板)當控制器處理請求時,URI模板中的變量會被對應部分的值所填充,具體請看示例
//ownerId即為變量,若請求地址為“/index/admin”,即變量id值為admin @RequestMapping(value="/index/{id}", method=RequestMethod.GET) public String findOwner(@PathVariable String id) { return "index"; }
3、指定為含正則表達式的一類值(這個實際開發中應該很少用)
@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 } }
RequestMapping註解