RESTFUL是一種網路應用程式的設計風格和開發方式,基於HTTP,可以使用XML格式定義或JSON格式定義。RESTFUL適用於移動網際網路廠商作為業務使能介面的場景,實現第三方OTT呼叫行動網路資源的功能,動作型別為新增、變更、刪除所呼叫資源。---百度百科
以前使用最多的請求方式還是post,post一時爽一直post一直爽,直到我接觸了restful風格API,嗯真香!我就簡單展示一下我怎麼使用的,太深刻的理論原理我們也不懂我們也不敢講!
REST,即Representational State Transfer的縮寫(表述性狀態傳遞)。 表述性狀態轉移是一組架構約束條件和原則。滿足這些約束條件和原則的應用程式或設計就是RESTful。需要注意的是,REST是設計風格而不是標準。REST通常基於使用HTTP,URI,和XML(標準通用標記語言下的一個子集)以及HTML(標準通用標記語言下的一個應用)這些現有的廣泛流行的協議和標準。
URI,統一資源識別符號(Uniform Resource Identifier,URI)是一個用於標識某一網際網路資源名稱的字串。 該種標識允許使用者對任何(包括本地和網際網路)的資源通過特定的協議進行互動操作。URI由包括確定語法和相關協議的方案所定義。
URL,統一資源定位系統(uniform resource locator;URL)是因特網的全球資訊網服務程式上用於指定資訊位置的表示方法。
請求路徑 請求方法 作用
/user/1 HTTP GET 查詢id為1的user
/user/1 HTTP DELETE 刪除id為1的user
/user/1 HTTP PUT 編輯id為1的user
/user HTTP POST 新增user
新增和修改一般是使用@RequestBody獲取整個body
@PostMapping(value = "/user")
public Message insert(@RequestBody User user) {
try {
userService.insert(user);
return Message.ok();
} catch (Exception e) {
logger.error(e.getMessage(), e);
return Message.fail();
}
}
@PutMapping(value = "/user")
public Message update(@RequestBody User user) {
try {
userService.update(user);
return Message.ok();
} catch (Exception e) {
logger.error(e.getMessage(), e);
return Message.fail();
}
}
當需要從請求路徑中獲取引數的時候就只能使用@PathVariable註解,刪除的時候一般只需要傳id,通過url帶參就可以了
@DeleteMapping(value = "/user/{id}")
public Message logicalDeletionById(@PathVariable(name = "id") String id) {
try {
userService.logicalDeletionById(id);
return Message.ok();
} catch (Exception e) {
logger.error(e.getMessage(), e);
return Message.fail();
}
}
如果需要多條件查詢就用物件傳查詢條件,下次講SpringBoot+Jpa多條件查詢+分頁+排序
@GetMapping(value = "/user") public Message findAll() { try { return new MessageBox<>(userService.findAll()); } catch (Exception e) { logger.error(e.getMessage(), e); return Message.fail(); } }
如果有什麼疑問歡迎留言,當然我也不一定懂!一起學習一起進步,群876083754