[开源]一款将数据库的 SQL 生成 RESTful 风格的 HTTP 接口的工具

开源系统流程管理
2026-06-28 06:03 13 次浏览 • 0 次下载 0KB
[开源]一款将数据库的 SQL 生成 RESTful 风格的 HTTP 接口的工具

一、开源项目简介

SQLREST

图片

将数据库的SQL生成RESTful风格的http接口的工具。

SQLREST是一款完全开源的SQL2API低代码工具。

二、开源协议

作者暂未指定开源许可协议

三、界面展示

1、部分系统截图

000.png
001.png
002.png
003.png
004.png
005.png
006.png
007.png
008.png
009.png
010.png

四、功能概述

一句话, sqlrest工具提供快速构建RESTful的API接口工具,包括SQl方式和Groovy脚本方式。功能包括:

  • SQL方式构建RESTful接口

提供类似mybatis的动态SQL语法方式构建接口。

  • 脚本方式构建RESTful接口

基于groovy脚本的语法方式构建复杂场景下的接口。

  • 支持接口的token安全认证功能

执行器支持生成token及token认证。

  • 支持接口的x-www-form-urlencoded和JSON入参格式

HTTP入参支持application/x-www-form-urlencoded及application/json等请求格式。

  • 支持生成在线接口文档功能

基于swagger-ui提供生成在线接口文档功能。

  • 支持接口的流量控制功能

执行器基于sentinel支持接口的流量控制功能。

2、支持的数据库

  • 甲骨文的Oracle
  • 微软的Microsoft SQLServer
  • MySQL
  • MariaDB
  • PostgreSQL
  • Greenplum(需使用PostgreSQL类型)
  • IBM的DB2
  • Sybase数据库
  • 国产达梦数据库DM
  • 国产人大金仓数据库Kingbase8
  • 国产翰高数据库HighGo
  • 国产神通数据库Oscar
  • 国产南大通用数据库GBase8a
  • Apache Hive
  • SQLite3
  • OpenGauss
  • ClickHouse
  • Apache Doris
  • StarRocks
  • OceanBase

3、模块结构功能

└── sqlrest
    ├── sqlrest-common           // sqlrest通用定义模块
    ├── sqlrest-template         // sqlrest的SQL内容模板模块
    ├── sqlrest-cache            // sqlrest执行器缓存模块
    ├── sqlrest-persistence      // sqlrest的数据库持久化模块
    ├── sqlrest-core             // sqlrest-core的接口实现模块
    ├── sqlrest-gateway          // Gateway网关节点
    ├── sqlrest-executor         // Executor接口执行节点
    ├── sqlrest-manager          // Manager管理节点
    ├── sqlrest-manager-ui       // 基于Vue2的Manager前段WEB交互页面
    ├── sqlrest-dist             // 基于maven-assembly-plugin插件的项目打包模块

4、正在规划中的功能

  • (1) 接口响应出参列表及说明文档

通过人工配制或接口调试,以构建接口出参及其说明文档。

  • (2) 支持接口的缓存配置功能

基于分布式缓存等构建支持接口的缓存配置功能。

  • (3) SQL结果集的出参格式转换

SQL查询结果集到接口出参相应的格式转换。

  • (4) 前端界面整体美化

美化界面的交互展示。

五、技术选型

编译打包

本工具纯Java语言开发,依赖全部来自于开源项目。

1、编译打包

  • 环境要求:
  • JDK
    :>=1.8 (建议用JDK 1.8)
  • maven
    :>=3.6

Maven 仓库默认在国外, 国内使用难免很慢,可以更换为阿里云的仓库。

参考教程: 配置阿里云的仓库教程

  • 编译命令:

(1) windows下:

双击build.cmd脚本文件即可编译打包

(2) Linux下:

git clone sqlrest
cd sqlrest/
sh ./build.sh

(3) Docker下:

git clone sqlrest
cd sqlrest/
sh ./docker-maven-build.sh

2、安装部署

详细内容请查看 README.md 文档