無(wú)需編程,通過(guò)配置零代碼生成CRUD RESTful API

Hello,crudapi?。愫茫鰟h改查接口?。?/h1>

本文通過(guò)學(xué)生對(duì)象為例,無(wú)需編程,通過(guò)配置實(shí)現(xiàn)CRUD RESTful API。

概要

CRUD簡(jiǎn)介

crud是指在做計(jì)算處理時(shí)的增加(Create)、檢索(Retrieve)、更新(Update)和刪除(Delete)幾個(gè)單詞的首字母簡(jiǎn)寫。crud主要被用在描述軟件系統(tǒng)中數(shù)據(jù)庫(kù)或者持久層的基本操作功能。

RESTfull API

REST(英文:Representational State Transfer,簡(jiǎn)稱REST)描述了一個(gè)架構(gòu)樣式的網(wǎng)絡(luò)系統(tǒng),比如 web 應(yīng)用程序。它首次出現(xiàn)在 2000 年 Roy Fielding 的博士論文中,Roy Fielding是 HTTP 規(guī)范的主要編寫者之一。在目前主流的三種Web服務(wù)交互方案中,REST相比于SOAP(Simple Object Access protocol,簡(jiǎn)單對(duì)象訪問協(xié)議)以及XML-RPC更加簡(jiǎn)單明了,無(wú)論是對(duì)URL的處理還是對(duì)Payload的編碼,REST都傾向于用更加簡(jiǎn)單輕量的方法設(shè)計(jì)和實(shí)現(xiàn)。值得注意的是REST并沒有一個(gè)明確的標(biāo)準(zhǔn),而更像是一種設(shè)計(jì)的風(fēng)格通過(guò)RESTful API實(shí)現(xiàn),學(xué)生操作具體接口如下

操作 REST ACTION API
添加學(xué)生 POST /api/business/students
獲取學(xué)生詳情 GET /api/business/students/id
修改學(xué)生 PATCH /api/business/students/id
刪除學(xué)生 DELETE /api/business/students/id
查詢學(xué)生 GET /api/business/students

表設(shè)計(jì)

學(xué)生字段設(shè)計(jì)

通過(guò)后臺(tái)元數(shù)據(jù)管理UI設(shè)計(jì)學(xué)生表字段,主要包括名稱,學(xué)號(hào),年齡,專業(yè)等字段

基本屬性

對(duì)象名稱唯一識(shí)別不同的對(duì)象,對(duì)象復(fù)數(shù)用于URL路徑中的資源,物理表名稱最終為數(shù)據(jù)庫(kù)中的表名
字段屬性主要包括:名稱,類型,索引,長(zhǎng)度,精度等

學(xué)生表設(shè)計(jì)

更多屬性

包括:是否可以為空,默認(rèn)值,是否可以插入,是否可以編輯,是否可以查詢等


學(xué)生表設(shè)計(jì)更多字段

數(shù)據(jù)庫(kù)

通過(guò)查看mysql數(shù)據(jù)庫(kù),學(xué)生表ca_student已經(jīng)生成


mysql ca_student

Swagger API文檔

https://demo.crudapi.cn/swagger-ui.html

Swagger

以創(chuàng)建為例:/api/business/{name},其中name為對(duì)象名稱復(fù)數(shù)形式(兼容對(duì)象名稱)

業(yè)務(wù)數(shù)據(jù)

通過(guò)post man驗(yàn)證API

創(chuàng)建學(xué)生
postman

請(qǐng)求URL
https://demo.crudapi.cn/api/business/students

請(qǐng)求body

{
    "name":"諸葛亮",
    "stuNo":"10000",
    "age":18,
    "major":"計(jì)算機(jī)科學(xué)與技術(shù)"
}

返回值1為id

查詢id為1的學(xué)生詳情
getstudent

請(qǐng)求URL
https://demo.crudapi.cn/api/business/students/1

返回body

{
    "id": 1,
    "name": "諸葛亮",
    "createdDate": 1613013249000,
    "stuNo": "10000",
    "age": 18,
    "major": "計(jì)算機(jī)科學(xué)與技術(shù)"
}

通過(guò)UI操作

創(chuàng)建學(xué)生
uicreate
獲取所有學(xué)生列表
uilist

其它操作

還有編輯,刪除等API類似,查看swager文檔即可!

小結(jié)

本文通過(guò)配置表單的方式實(shí)現(xiàn)了RESTful CRUD API,和傳統(tǒng)開發(fā)的方式對(duì)比如下:

實(shí)現(xiàn)方式 代碼量 時(shí)間 穩(wěn)定性
傳統(tǒng)開發(fā) 1000行左右 2天/人 5個(gè)bug左右
cruapi系統(tǒng) 0行 1分鐘 基本為0

綜上所述,利用crudapi系統(tǒng)可以極大的提高工作效率和節(jié)約成本,讓數(shù)據(jù)處理變得更簡(jiǎn)單!

附demo演示

本系統(tǒng)屬于產(chǎn)品級(jí)的零代碼平臺(tái),不同于自動(dòng)代碼生成器,不需要生成Controller、Service、Repository、Entity等業(yè)務(wù)代碼,程序運(yùn)行起來(lái)就可以使用,真正0代碼,可以覆蓋基本的和業(yè)務(wù)無(wú)關(guān)的CRUD RESTful API。

官網(wǎng)地址:https://crudapi.cn
測(cè)試地址:https://demo.crudapi.cn/crudapi/login

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容