1、magic-api
magic-api是一个基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为HTTP接口。 无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象即可完成常见的HTTP API接口开发。
==支持MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer等支持jdbc规范的数据库
支持非关系型数据库Redis、Mongodb、ElasticSearch
支持动态配置定时任务
支持集群部署、接口自动同步
支持分页查询以及自定义分页查询
支持多数据源配置,支持在线配置数据源
支持SQL缓存,以及自定义SQL缓存
支持自定义JSON结果、自定义分页结果
支持对接口权限配置、拦截器等功能
支持Swagger接口文档生成
支持团队协作,可显示在线人数、以及他人正在编辑和浏览的接口等功能
基于magic-script (opens new window)脚本引擎,动态编译,无需重启,实时发布
支持Linq式查询,关联、转换更简单
支持数据库事务、SQL支持拼接,占位符,判断等语法
支持脚本历史版本对比与恢复
支持脚本代码自动提示、参数提示、悬浮提示、错误提示
支持导入Spring中的Bean、Java中的类
支持在线调试
支持自定义工具类、自定义模块包、自定义类型扩展、自定义方言、自定义列名转换等自定义操作==
2、magic-api特点
::: hljs-center
magic-api在线编辑器图
:::
1)图形化web页面编辑器
通过web页面管理代码、发布部署和在线调试。
2)magic-script脚本语法
magic-script是一款基于JVM的脚本语言,目前主要是为magic-api项目设计,具有动态类型、解释性、弱类型和简单性的特点。
3)配置多个数据源
可以在线配置多个数据源,通过db.db1.select(‘sql’)进行访问。
4)参数校验
自动校验
如图所示,可验证必填,表达式验证和正则验证。
手动校验
对于表达式和正则无法实现的可以通过脚本来实现。
5)脚本调用java
功能包括注入Spring Bean、调用静态方法、调用普通方法、调用magic-api的接口、调用magic-api的函数等。
6)Java调用接口
功能包括调用接口、调用函数。
7)Linq
以类似SQL脚本语句的形式操作list。
3、magic-api应用
magic-api已应用到工大科雅名片小程序和基于百度OCR的仪表识别APP后台接口的开发,上线后项目运行平稳可靠。
在工大科雅名片小程序中1个开发人员3天共开发了18个接口。功能包括用户手机号登录、激活邮件发送、用户信息获取、用户管理、公司信息展示和管理、游客名片夹管理和商务名片夹管理。
基于百度OCR的仪表识别APP功能包括扫描燃气仪表液晶屏自动识别表底数值。
4、配置及内置API
4.1、magic-api内置API
内置API由模块、函数和扩展三部分构成:
模块提供的API
函数提供的API
扩展API
5、总结 在基于SpringBoot项目开发中,开发一个接口,需要一个很长的流程,包括配置文件、实体类、仓储层、业务层和表现层,且调试项目需启动项目后才可以进行调试,在代码开发和调试中耗费大量的时间,通过magic-api只需要一个脚本文件即可完成接口的开发,开发效率非常高,并且支持在线直接调试。