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的更多相关文章

  1. 10款无需编程的App DIY开发工具

    10款无需编程的App DIY开发工具 你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App  DIY开发工具.DIY开发工具不仅节省了开发时 ...

  2. 技术大众化--10款无需编程的App DIY开发工具

    你有一个很棒的创意但不会编程怎么办?外包.合伙开发还是从零学编程?这里提供另外一种方式--使用无需编程的App DIY开发工具.DIY开发工具不仅节省了开发时间和资金,更为那些创意无限热爱应用的人提供 ...

  3. Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径

    Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...

  4. WCF编程系列(六)以编程方式配置终结点

    WCF编程系列(六)以编程方式配置终结点   示例一中我们的宿主程序非常简单:只是简单的实例化了一个ServiceHost对象,然后调用open方法来启动服务.而关于终结点的配置我们都是通过配置文件来 ...

  5. centos7多网卡配置bond0 (mode6无需交换机做配置)

    1.执行setup命令-->网络配置-->本例中四块网卡. 2.ifconfig列出四块网卡. 3.我们的目标,绑定eth0和eth1两块网卡作为公网网卡,ip设置为192.168.0.5 ...

  6. Yii2 Restful api设计--App接口编程

    Yii2框架写一套RESTful风格的API,对照魏曦教你学 一,入门 一.目录结构 实现一个简单地RESTful API只需用到三个文件.目录如下: frontend ├─ config │ └ m ...

  7. yii2 restful api——app接口编程实例

    <?php namespace common\components; use common\models\Cart; use common\models\User; use Yii; use y ...

  8. 所见即所得:七大无需编程的DIY开发工具

    现如今,各种DIY开发工具不断的出现,使得企业和个人在短短几分钟内就能完成应用的创建和发布,大大节省了在时间和资金上的投入.此外,DIY工具的出现,也帮助广大不具备专业知识和技术的“移动开发粉”创建自 ...

  9. Restful Api CRUD 标准示例 (Swagger2+validator)

    为什么要写这篇贴? 要写一个最简单的CRUD 符合 Restful Api    规范的  一个Controller, 想百度搜索一下 直接复制拷贝 简单修改一下 方法内代码. 然而, 搜索结果让我无 ...

随机推荐

  1. Codeforces Round #647 (Div. 2) - Thanks, Algo Muse! D. Johnny and Contribution (贪心,模拟)

    题意:有\(n\)个点,\(m\)条边,现在要给这些点赋值,,每次只能赋给某一点的四周(所连边)的最小没出现过的值.如果不能按照所给的数赋值,输出\(-1\),否则输出赋值顺序. 题解:我们用\(pa ...

  2. DQL 数据查询语言

    查询数据(SELECT) # 查询所有数据 - 很危险,数据量过大,容易导致内存溢出而宕机 mysql> select * from student; # 先查询数据总量,然后决定是否可以查询所 ...

  3. java中string,stringBuffer和StringBuider

    最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBuilder的东西,现在整理一下. 关于这三个类在字符串处理中的位置不言而喻,那 ...

  4. oranges-给mini os 添加内存管理,进程多级反馈队列,进程内存完整性度量

    参考: 内存管理: https://www.jianshu.com/p/49cbaccd38c5 crc校验 https://www.cnblogs.com/zzdbullet/p/9580502.h ...

  5. CodeForces - 13E(分块)

    Little Petya likes to play a lot. Most of all he likes to play a game «Holes». This is a game for on ...

  6. 833A The Meaningless Game

    A. The Meaningless Game time limit per test 1 second memory limit per test 256 megabytes input stand ...

  7. 008.NET5_IIS安装教程

    控制面板->程序->启动或关闭Windows功能

  8. 图片转tfrecords

    import numpy as np import tensorflow as tf import time import os import cv2 from sklearn.utils impor ...

  9. Lua 从入门到放弃

    Lua 从入门到放弃 What is Lua? Lua is a powerful, efficient, lightweight, embeddable scripting language. It ...

  10. HTML5 dataset All In One

    HTML5 dataset All In One dataset https://developer.mozilla.org/en-US/docs/Web/API/HTMLOrForeignEleme ...