ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

无需编程,通过配置零代码生成CRUD RESTful API

2021-04-07 20:52:03  阅读:165  来源: 互联网

标签:API 代码生成 business students CRUD 学生 api id


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 ACTIONAPI
添加学生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

{"name":"诸葛亮","stuNo":"10000","age":18,"major":"计算机科学与技术"}

返回值1为id

查询id为1的学生详情

在这里插入图片描述

请求URL
https://demo.crudapi.cn/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。

标签:API,代码生成,business,students,CRUD,学生,api,id
来源: https://blog.51cto.com/15149911/2690800

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有