无需编程,通过配置零代码生成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
{
"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。
官网地址:https://crudapi.cn
测试地址:https://demo.crudapi.cn/crudapi/login
无需编程,通过配置零代码生成CRUD RESTful API的更多相关文章
- 10款无需编程的App DIY开发工具
10款无需编程的App DIY开发工具 你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App DIY开发工具.DIY开发工具不仅节省了开发时 ...
- 技术大众化--10款无需编程的App DIY开发工具
你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App DIY开发工具.DIY开发工具不仅节省了开发时间和资金,更为那些创意无限热爱应用的人提供 ...
- Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径
Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...
- WCF编程系列(六)以编程方式配置终结点
WCF编程系列(六)以编程方式配置终结点 示例一中我们的宿主程序非常简单:只是简单的实例化了一个ServiceHost对象,然后调用open方法来启动服务.而关于终结点的配置我们都是通过配置文件来 ...
- centos7多网卡配置bond0 (mode6无需交换机做配置)
1.执行setup命令-->网络配置-->本例中四块网卡. 2.ifconfig列出四块网卡. 3.我们的目标,绑定eth0和eth1两块网卡作为公网网卡,ip设置为192.168.0.5 ...
- Yii2 Restful api设计--App接口编程
Yii2框架写一套RESTful风格的API,对照魏曦教你学 一,入门 一.目录结构 实现一个简单地RESTful API只需用到三个文件.目录如下: frontend ├─ config │ └ m ...
- yii2 restful api——app接口编程实例
<?php namespace common\components; use common\models\Cart; use common\models\User; use Yii; use y ...
- 所见即所得:七大无需编程的DIY开发工具
现如今,各种DIY开发工具不断的出现,使得企业和个人在短短几分钟内就能完成应用的创建和发布,大大节省了在时间和资金上的投入.此外,DIY工具的出现,也帮助广大不具备专业知识和技术的“移动开发粉”创建自 ...
- Restful Api CRUD 标准示例 (Swagger2+validator)
为什么要写这篇贴? 要写一个最简单的CRUD 符合 Restful Api 规范的 一个Controller, 想百度搜索一下 直接复制拷贝 简单修改一下 方法内代码. 然而, 搜索结果让我无 ...
随机推荐
- windows server 2016 安装有线网卡驱动
为自己的本本安装了server 2016系统,但是官网下载的有线网卡驱动一直安不上,解决方法如下: 1.到Intel官网下载一个叫PROWinx64的驱动程序,解压到任意文件夹.依次进入PRO1000 ...
- HTTP笔记1--Web及网络基础
web页面如何呈现? 客户端:通过发送请求获取服务器资源的 Web 浏览器 web是建立在 HTTP 协议上通信的 WWW(万维网/web)的构建技术 把 SGML(StandardGeneral ...
- Python——Django框架——django-simple-captcha(验证码)
一.引用 包 pip install django-simple-captcha 二.将captcha加入setting的 INSTALLED_APPS 三.运行python manager.py m ...
- Please commit your changes or stash them before you merge问题解决
问题描述 error: Your local changes to the following files would be overwritten by merge: xxx/xxx/xxx.c P ...
- html图片占位符插件holder.js
1.下载源码 下载链接:http://www.bootcdn.cn/holder/ 2.在HTML中引入holde.js <script src="holder-js-2.9.4\ho ...
- bzoj4695 最假女选手(势能线段树/吉司机线段树)题解
题意: 已知\(n\)个数字,进行以下操作: \(1.\)给一个区间\([L,R]\) 加上一个数\(x\) \(2.\)把一个区间\([L,R]\) 里小于\(x\) 的数变成\(x\) \(3.\ ...
- μC/OS-III---I笔记10---内存管理
内存管理: 平时经常用到一些windows内存管理的软件,有一些内存管理的软件进行内存碎片的整理,在频繁分配和释放内存的地方会造成大量的内存碎片.内存碎片是如何形成的呢?书中是这样写的:在不断的分配和 ...
- 前端水印方案 All In One
前端水印方案 All In One base64 用户名 图片水印 <div id="wm" style="pointer-events: none; width: ...
- TypeScript Developer Roadmap
TypeScript Developer Roadmap https://github.com/xgqfrms/TypeScript-Developer-Roadmap https://typescr ...
- js & bitwise operator
js & bitwise operator bitwise operator https://github.com/Advanced-Frontend/Daily-Interview-Ques ...