Hello,crudapi!(你好,增删改查接口!)
本文通過學生對象為例,無需程式設計,通過配置實作CRUD RESTful API。
概要
CRUD簡介
crud是指在做計算處理時的增加(Create)、檢索(Retrieve)、更新(Update)和删除(Delete)幾個單詞的首字母簡寫。crud主要被用在描述軟體系統中資料庫或者持久層的基本操作功能。
RESTfull API
REST(英文:Representational State Transfer,簡稱REST)描述了一個架構樣式的網絡系統,比如 web 應用程式。它首次出現在 2000 年 Roy Fielding 的博士論文中,Roy Fielding是 HTTP 規範的主要編寫者之一。在目前主流的三種Web服務互動方案中,REST相比于SOAP(Simple Object Access protocol,簡單對象通路協定)以及XML-RPC更加簡單明了,無論是對URL的處理還是對Payload的編碼,REST都傾向于用更加簡單輕量的方法設計和實作。值得注意的是REST并沒有一個明确的标準,而更像是一種設計的風格通過RESTful API實作,學生操作具體接口如下
操作 | REST ACTION | API |
---|---|---|
添加學生 | POST | /api/business/students |
擷取學生詳情 | GET | /api/business/students/id |
修改學生 | PATCH | |
删除學生 | DELETE | |
查詢學生 |
表設計
學生字段設計
通過背景中繼資料管理UI設計學生表字段,主要包括名稱,學号,年齡,專業等字段
基本屬性
對象名稱唯一識别不同的對象,對象複數用于URL路徑中的資源,實體表名稱最終為資料庫中的表名
字段屬性主要包括:名稱,類型,索引,長度,精度等
更多屬性
包括:是否可以為空,預設值,是否可以插入,是否可以編輯,是否可以查詢等
資料庫
通過檢視mysql資料庫,學生表ca_student已經生成
Swagger API文檔
https://demo.crudapi.cn/swagger-ui.html以建立為例:/api/business/{name},其中name為對象名稱複數形式(相容對象名稱)
業務資料
通過post man驗證API
建立學生
請求URL
請求body
{
"name":"諸葛亮",
"stuNo":"10000",
"age":18,
"major":"計算機科學與技術"
}
傳回值1為id
查詢id為1的學生詳情
/api/business/students/1
傳回body
{
"id": 1,
"name": "諸葛亮",
"createdDate": 1613013249000,
"stuNo": "10000",
"age": 18,
"major": "計算機科學與技術"
}
通過UI操作
擷取所有學生清單
其它操作
還有編輯,删除等API類似,檢視swager文檔即可!
小結
本文通過配置表單的方式實作了RESTful CRUD API,和傳統開發的方式對比如下:
實作方式 | 代碼量 | 時間 | 穩定性 |
---|---|---|---|
傳統開發 | 1000行左右 | 2天/人 | 5個bug左右 |
cruapi系統 | 0行 | 1分鐘 | 基本為0 |
綜上所述,利用crudapi系統可以極大的提高工作效率和節約成本,讓資料處理變得更簡單!
附demo示範
本系統屬于産品級的零代碼平台,不同于自動代碼生成器,不需要生成Controller、Service、Repository、Entity等業務代碼,程式運作起來就可以使用,真正0代碼,可以覆寫基本的和業務無關的CRUD RESTful API。
官網位址:
https://crudapi.cn測試位址:
https://demo.crudapi.cn/crudapi/login