1. 介绍
Dataway
是基于 DataQL
服务聚合能力,为应用提供的一个接口配置工具。使得开发者无需开发任何代码就配置一个满足需求的接口。整个接口配置、测试、冒烟、发布。一站式都通过 Dataway
提供的 UI 界面完成。UI 会以 Jar 包方式提供并集成到应用中并和应用共享同一个 http
端口,应用无需单独为 Dataway
开辟新的管理端口。
这种内嵌集成方式模式的优点是,可以使得大部分老项目都可以在无侵入的情况下直接应用 Dataway
。进而改进老项目的迭代效率,大大减少企业项目研发成本。
Dataway
工具化的提供DataQL
配置能力。这种开发模式的变革使得 相当多的需求开发场景只需要配置即可完成交付。从而避免了从数据存取到前端接口之间的一系列开发任务,例如:Mapper、BO、VO、DO、DAO、Service、Controller 通通不在需要。
DataQL是否是一门新的编程语言?
DataQL 的设计初衷是数据的聚合和转换以及过程中的简单加工,因此它不是编程语言。虽然它具备了一些编程性,对逻辑的处理 DataQL 仅限于简单场景。--摘自Dataway官网
2.实战Dataway
2.1 集成SpringBoot
项目结构:
本次使用springboot版本为:
2.1.9.RELEASE
JDK环境
1.8
添加依赖包
<dependencies>
- 在应用的 application.yml 配置文件中启用 Dataway
spring:
- 在项目主启动类上 启用
Hasor
package com.xiaobinbin;
- 初始化数据源(将 Spring 使用的数据源导入到 Hasor 环境供 Dataway 使用)
package com.xiaobinbin.config;
- 初始化数据库必要的表
数据表可以在
hasor-dataway.jar
中找到,存储地址:META-INF/hasor-framework/mysql,分别把interface_info.sql
和interface_release.sql
导入到数据库中即可。
以下是表结构:
CREATE
启动工程
在启动日志中看到下列信息输出就表示 Dataway 已经可以正常访问了。
访问管理配置界面进行接口配置
在浏览器中地址栏输入:http://127.0.0.1:8080/interface-ui/
-
新建一个接口 其中
var queryUsers = @@sql()
是用来定义SQL外部代码块,并将这个定义存入queryUsers
变量名中。中间的就是 SQL 语句。最后在
DataQL
中调用这个代码块,并返回查询结果。接口发布之后 请求
/api/findAll
查询所有:http://127.0.0.1:8080/api/findAll?username=
根据username
参数条件进行查询: http://127.0.0.1:8080/api/findAll?username=Java学习记录
总结
通过一个简单的例子介绍了如何使用
Dataway
配置一个接口。并且给接口增加一个请求参数,并确定了接口的返回结构。最后编写SQL
查询数据然后通过DataQL
格式转换的能力满足响应结果的要求。
▼欢迎关注【Java学习记录】微信公众号▼