magic-api 介绍
magic-api 是一个基于Java的接口快速开发框架,将通过magic-api提供的UI界面完成编写接口,自动映射为HTTP接口,无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象即可完成常见的HTTP API接口开发
magic-api
并不是代替传统的开发,即可以与传统的接口开发共存,也可以单独使用
magic-api 可以做什么?
- 报表、看板、多统计查询场景
- 业务逻辑相对简单、需快速开发迭代
- 将数据库、服务等多个结果集聚合处理
magic-api 有哪些功能?
- 支持MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer 等多种数据库
- 支持非关系型数据库Redis、Mongodb
- 支持分页查询以及自定义分页查询
- 支持多数据源配置,支持运行时动态添加数据源
- 支持SQL缓存,以及自定义SQL缓存
- 支持自定义JSON结果、自定义分页结果
- 支持对接口权限配置、拦截器等功能
- 支持运行时动态修改数据源
- 支持Swagger接口文档生成
- 基于magic-script脚本引擎,动态编译,无需重启,实时发布
- 支持数据库事务、SQL支持拼接,占位符,判断等语法
- 支持文件上传、下载、输出图片
- 支持脚本历史版本对比与恢复
- 支持脚本代码自动提示、错误提示
- 支持导入Spring中的Bean、Java中的类
- 支持在线调试脚本引擎
- 支持自定义工具类、自定义模块包、自定义类型扩展
快速集成
maven 引入
<!-- 以spring-boot-starter的方式引用 -->
<dependency>
<groupId>org.ssssssss</groupId>
<artifactId>magic-api-spring-boot-starter</artifactId>
<version>0.4.6</version>
</dependency>
创建数据库表
执行Github或Gitee仓库中的SQL语句:db/magic-api.sql
,具体链接在文章末尾。
配置SpringBoot
server.port=9999
#配置web页面入口
magic-api.web=/magic/web
#以下配置需跟实际情况修改
spring.datasource.url=jdbc:mysql://localhost/test
spring.datasource.username=root
spring.datasource.password=123456789
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
启动项目
启动项目之后,在访问http://localhost:9999/magic/web 即可以看到接口配置页面
创建一个接口
保存之后访问页面测试(访问第2页,每页5条):
其它Demo就不一一列举了,SQL脚本中内置了很多Demo,可以下载自行查看,也可以访问演示地址
总结
通过以上简单的配置就可以实现一个接口,相比传统方式极大的简化了开发,这也正是本项目的初衷以及目的。如果大家在使用过程中有什么问题、疑问、建议可以在评论区、Github、Gitee上提Issue,也欢迎加QQ交流群来讨论。