magic-api 是一个基于 java 培训的接口疾速开发框架,编写接口将通过 magic-api 提供的 UI 界面实现,主动映射为 HTTP 接口,无需定义 Controller、Service、Dao、Mapper、XML、VO 等 Java 对象即可实现常见的 HTTP API 接口开发。
环境
首先 pom.xml 引入 magic-api 外围包 magic-api-spring-boot-starter
<dependency>
<groupId>org.ssssssss</groupId>
<artifactId>magic-api-spring-boot-starter</artifactId>
<version>0.7.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
application.yml 配置更简略,数据库(没数据库操作能够不写)和 magic-api 的根底信息
magic-api:
web: /magic/web # UI 申请的界面以及 UI 服务地址
server:
port: 9999
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
password: xinzhifu521
url: jdbc:mysql://47.93.6.5:3306/magic-api
username: root
好了~ 到这环境就搭建实现!
在具体演示之前先吐槽一下用 Java 开发 API 的毛病,首当其冲的就是啰嗦,尤其是在工期紧,性能需疾速迭代的时候,既要严格执行开发标准,又不能耽搁工期,即使最简略的一个 API 接口,也要写对应的 Controller、Service、Dao、Mapper、DTO、VO 等类,只管这些根底编码有对应的代码生成器,但保护起来还是相当麻烦,magic-api 起到一个很好的辅助作用,少写了很多代码。
实际
关上 magic-api 可视化界面,看到如下的界面。
创立一个分组,其中分组前缀为一组 API 接口的拜访根目录,相当于 @Controller(“/order”)注解。
接着在分组中创立接口 order_detail,页面配置接口的根底信息,接口名称、申请门路、申请办法、申请参数、申请 header 等,接口间接 return 返回内容
return‘小富最帅’
在页面拜访刚刚创立接口的全门路,发现曾经胜利返回数据。
也能够间接拼 JSON 格局数据间接返回
如果 URL 传参 /order_detail/{id},导入 request 模块获取参数
import request;
a = path.id
到这一个简略的 API 接口就开发完了,而此时咱们还未在我的项目中写一行代码
但上边只是静态数据,在理论开发中往往要与数据库打交道,magic-api 提供了一些相似于 python 开发中的模块化组件,例如引入 import db 模块,间接执行 SQL 语句会返回 JSON 格局数据,省略了很多两头步骤。
magic-api 语法与 Java 的差别不大,不过更加精简了一些,只有写过 Java 对它学习老本并不高,比方罕用得 for 循环,也会有一般和 lambda 多种写法。
var sum = 0;
var list = [1,2,3,4,5];
for(val in list){
sum = sum + val;
}
list.each(it => sum+= it + 1)
这里我只简略的介绍了应用,还有很多高级个性,比方:调用 Java API、集成 redis、Mongo 等,感兴趣的同学本人看下官网文档吧,它还提供了很多语法 demo,拿来即用就好。