无需编程,通过配置零代码生成 CRUD RESTful API
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| /api/business/students/id
删除学生 | DELETE| /api/business/students/id
查询学生 | GET| /api/business/students
表设计
学生字段设计
通过后台元数据管理 UI 设计学生表字段,主要包括名称,学号,年龄,专业等字段
基本属性
对象名称唯一识别不同的对象,对象复数用于 URL 路径中的资源,物理表名称最终为数据库中的表名
字段属性主要包括:名称,类型,索引,长度,精度等
更多属性
包括:是否可以为空,默认值,是否可以插入,是否可以编辑,是否可以查询等
数据库
通过查看 mysql 数据库,学生表 ca_student 已经生成
Swagger API 文档
https://demo.crudapi.cn/swagger-ui.html
以创建为例:/api/business/{name},其中 name 为对象名称复数形式(兼容对象名称)
业务数据
通过 post man 验证 API
创建学生
请求 URL
https://demo.crudapi.cn/api/business/students
请求 body
返回值 1 为 id
查询 id 为 1 的学生详情
请求 URL
https://demo.crudapi.cn/api/business/students/1
返回 body
通过 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
版权声明: 本文为 InfoQ 作者【crudapi】的原创文章。
原文链接:【http://xie.infoq.cn/article/64b1e338f8ba98928daf90880】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论