Rest是什么?
1、Rest的概念
Rest是一種基於HTTP(S)協議、URI(地址)以及數據格式(XML and JSON)技術,為了解決遠程調用的代碼設計風格。
疑惑1:何為遠程調用?
答:遠程調用就是一個程序調用另外一個程序,獲得返回的結果。
疑惑2:何為技術風格?
答:編程風格只是一種技術規范,只是一個代碼編寫的建議而已。
2、Rest的設計原則
1.使用URI【統一資源定位符】來獲得資源 ,URI的格式: 協議://IP:端口/資源路徑
--前端請求
http://192.168.101.100:8080/user/10002 (URL,是具體的路徑)
--后台Controller
@GetMappint(value = "/user/{id}")
@ResponseBody
public User findUserById(@PathVariable Integer id){
}
2.增加行為的使用method=”POST”類型請求請求
3.刪除行為使用method=”DELETE”類型的請求
4.更新行為使用method=”PUT”類型的請求
5.查詢行為的使用method=”GET”類型的請
7.返回的數據格式使用XML和JSON,主流就是JSON數據
8.發送使用異步請求(AJAX)
疑惑:為什么需要多出method的其它方式?
回答:目的是為了前后端統一接口標准,做到看見method的類型,就可以確定請求的行為的作用。
3、涉及的注解
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") //用於Spring,接收請求的時間數據格式
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone ="GMT+8") //用於返回JSON數據
@RequestBody //將請求的json字符串解析后封裝進對象里面,自動映射關聯 //依賴jackson包
@ResponseBody //將處理完畢后的數據以json格式的字符串返回
@PathVariable //占位符
@RestController//表示整個Controller都是用來做數據交互的