Music Playlist
- Spring MVC
- Min-heap
- REST API
- MySQL
REST Api
REST = REpresentations State Transform
- REpresentations: JSON ot XML
- Transferred: between client and server
Example
2.Uniform Interface:
Uniform Interface
- HTTP的作用: HyperText Transfer Protocol
7個(gè)HTTP方法:GET/POST/PUT/DELETE/PATCH/HEAD/OPTIONS
[POST] http://mengkang.net/users // 新增
[GET] http://mengkang.net/users/1 // 查詢(xún)
[PATCH] http://mengkang.net/users/1 // 更新
[PUT] http://mengkang.net/users/1 // 覆蓋爪喘,全部更新
[DELETE] http://mengkang.net/users/1 // 刪除
[HEAD] 請(qǐng)求的是資源的元數(shù)據(jù)纠拔,比如一張照片稠诲,的元數(shù)據(jù)則可能包含了臀叙,照片拍攝的設(shè)備,地點(diǎn)劝萤,時(shí)間等
[OPTIONS] 則是發(fā)送一種“探測(cè)”請(qǐng)求以確定針對(duì)某個(gè)目標(biāo)地址的請(qǐng)求必須具有怎樣的約束(比如應(yīng)該采用怎樣的HTTP方法以及自定義的請(qǐng)求報(bào)頭)床嫌,然后根據(jù)其約束發(fā)送真正的請(qǐng)求厌处。
3.Cacheable
4.架構(gòu)風(fēng)格:
- 客戶(hù)-服務(wù)器(Client-Server)通信只能由客戶(hù)端單方面發(fā)起阔涉,表現(xiàn)為請(qǐng)求-響應(yīng)的形式。
- 無(wú)狀態(tài)(Stateless)通信的會(huì)話(huà)狀態(tài)(Session State)應(yīng)該全部由客戶(hù)端負(fù)責(zé)維護(hù)贯要。
- 緩存(Cache)響應(yīng)內(nèi)容可以在通信鏈的某處被緩存郭毕,以改善網(wǎng)絡(luò)效率函荣。
- 統(tǒng)一接口(Uniform Interface)通信鏈的組件之間通過(guò)統(tǒng)一的接口相互通信傻挂,以提高交互的可見(jiàn)性。
- 分層系統(tǒng)(Layered System)通過(guò)限制組件的行為(即兽肤,每個(gè)組件只能“看到”與其交互的緊鄰層)资铡,將架構(gòu)分解為若干等級(jí)的層
5.REST 具體Coding