springboot-web开发(请求参数)
生活随笔
收集整理的這篇文章主要介紹了
springboot-web开发(请求参数)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
注解
@PathVariable,?@RequestHeader,@ModelAttribute,@RequestParam,@MatrixVariable,@CookieValue,@ResponseBody
<html><head><meta charset="UTF-8"> </head><body><ul><a href="car/3/owner/lisi?age=18&interests=basketball&interests=game">car/{id}/owner/{username}</a><li>@PathVariable(路徑變量)</li><li>@RequestHeader(獲取請求頭)</li><li>@RequestParam(請求參數)</li><li>@CookieValue(獲取Cookie值)</li><li>@RequestBody(獲取請求體[POST])</li> </ul><form action="/save" method="POST">測試@RequestBody獲取數據<br/>用戶名:<input name="username"/><br/>郵箱: <input name="email"/></br><input type="submit" value="提交"></form><a href="/cars/sell;low=24;brand=byd,audi,yd">@MatrixVariable(矩陣變量)</a><br/> <a href="/cars/sell;low=24;brand=byd;brand=audi;brand=yd">@MatrixVariable(矩陣變量)</a><br/> <a href="/boss/1;age=20/2;age=10">@MatrixVariable(矩陣變量) /boss/{bossId}/{empId}</a><br/></body></html>?
import org.springframework.web.bind.annotation.*;import javax.servlet.http.Cookie; import java.util.HashMap; import java.util.List; import java.util.Map;@RestController public class ParameterTestController {@GetMapping("/car/{id}/owner/{username}")public Map<String, Object> getCar(@PathVariable("id") Integer id,@PathVariable("username") String name,@PathVariable Map<String, String> pv,@RequestHeader("User-Agent") String userAgent,@RequestHeader Map<String, String> heads,@RequestParam("age") Integer age,@RequestParam("interests") List<String> interests,@RequestParam Map<String, String> params//@CookieValue("_ga") Cookie cookie){Map<String, Object> map = new HashMap<>();map.put("id",id);map.put("name",name);map.put("pv",pv);map.put("userAgent",userAgent);map.put("heads",heads);map.put("age",age);map.put("interests",interests);map.put("params",params);//map.put("Cookie",cookie);return map;}@PostMapping("/save")public Map<String, Object> postMethod(@RequestBody String content){Map<String, Object> map = new HashMap<>();map.put("content",content);return map;}/** spring boot 默認禁用了矩陣變量的功能* 手動開啟:原理. 對于路徑的處理. UrlPathHelper類進行解析* removeSemicolonContent(移除分號內容)支持矩陣變量*/@GetMapping("/cars/{path}")public Map carsSell(@MatrixVariable("low") String low,@MatrixVariable("brand") List<String> brand,@PathVariable("path") String path){Map<String, Object> map = new HashMap<>();map.put("low",low);map.put("brand",brand);map.put("path",path);return map;}@GetMapping("/boss/{bossId}/{empId}")public Map boss(@MatrixVariable(value = "age",pathVar = "bossId") Integer bage,@MatrixVariable(value = "age",pathVar = "empId") Integer eage,@PathVariable("bossId") String bossId,@PathVariable("empId") String empId){Map<String, Object> map = new HashMap<>();map.put("bage",bage);map.put("eage",eage);map.put("bossId",bossId);map.put("empId",empId);return map;} }矩陣變量的使用
?Servlet API
復雜參數?
自定義對象參數?
?
1. handlerMapping中找到能處理請求的Handler
2. 為當前handler找一個適配器HandlerAdapter
?
參數解析器
?確定將要執行的目標方法的每一個參數的值是什么
返回值處理器?
?
?
總結
以上是生活随笔為你收集整理的springboot-web开发(请求参数)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springboot-web开发(请求映
- 下一篇: 数据结构-荷兰国旗问题