java之@Controller和@RestController以及@GetMapping和@PostMapping接收參數的格式使用

  • 2019 年 10 月 4 日
  • 筆記

一、1.使用@Controller 註解,在對應的方法上,視圖解析器可以解析return 的jsp,html頁面,並且跳轉到相應頁面

若返回json等內容到頁面,則需要加@ResponseBody註解

2.@RestController註解,相當於@Controller+@ResponseBody兩個註解的結合,返回json數據不需要在方法前面加@ResponseBody註解了,但使用@RestController這個註解,就不能返回jsp,html頁面,視圖解析器無法解析jsp,html頁面

二、

1、@RequestMapping 默認method是get,post方式都支持

2、@RequestMapping(value = 「createPickOrder.do」, produces = 「application/json;charset=utf-8」, method = RequestMethod.POST)

produces = 「application/json;charset=utf-8」:表示返回數據格式

method = RequestMethod.POST表示請求格式

post請求,如果是接收json格式(要求傳輸參數是json(application/json;charset=utf-8),接收參數要是一個參數或者是一個對象並且參數前加上@RequestBody註解);如果是表單提交(application/x-www-form-urlencoded),接收參數沒有要求即可以是對象也可以是多個參數的接收方式

get請求,參數不能是json(application/json;charset=utf-8)格式,只能是表單(application/x-www-form-urlencoded)格式

3、

@PostMapping

映射一個POST請求

Spring MVC新特性 提供了對Restful風格的支持

@GetMapping,處理get請求 @PostMapping,處理post請求 @PutMapping,處理put請求 @DeleteMapping,處理delete請求

@PostMapping(value = "/user/login")

等價於

@RequestMapping(value = "/user/login",method = RequestMethod.POST)