分享

开源:一款适用于BI报表、数据可视化大屏的后端接口快速开发工具

 汉无为 2023-03-14 发布于湖北
大家好,我是家兴!
一位耿直的,不够圆滑的,二流的程序员!

1.项目介绍

这是一款零代码开发api服务,只需编写sql,就可以生成http api服务。支持api动态创建,多数据源连接,动态添加数据源,兼容多种数据库。适用于BI报表、数据可视化大屏的后端接口快速开发。


2.使用场景

  • · BI报表、数据可视化大屏的后端接口快速开发

  • · 前端程序员快速开发后端接口进行接口联调

  • · 企业数据资产对外快速发布http服务及统一管理


3.特点

  • · 支持动态添加、修改api;支持api上线、下线管理

  • · API支持访问权限控制,API支持分组管理

  • · 支持多数据源连接,支持动态添加、修改、删除数据库地址

  • · 支持多种类型数据库,包括mysql/sqlserver/postgreSql/hive/kylin/clickhouse/oracle

  • · 支持动态sql,类似mybatis的动态sql

  • · 部署简便,安装部署不需要使用外部数据库,一键启动即可(自带sqlite数据库作为元数据库,同时支持用户自定义使用mysql作为元数据库)


4.软件架构

  • · 采用B/S架构,springboot + vue.js 前后端分离开发

  • · 考虑到部署的简便性,使用sqlite数据库

  • · 使用了开源的动态sql引擎orange

  • · 权限校验流程


5.安装教程

  • · 依赖java环境,需要安装jdk8+

  • · 下载地址:天翼云盘 ,或者在发行版页面下载


有以下3种方式:

Image
Image

DELICIOUS

jar包安装


  • · 如果您想要快速安装,请下载dbApi.jar包

  • · 启动命令:java -jar dbApi.jar 一键启动

  • · 启动后浏览器访问 http://ip:8520 ,默认登录账户:admin/admin

Image

DELICIOUS

tar包安装


  • · 如果您想自定义配置,请下载dbApi.tar.gz包

  • · 解压tar包,修改conf/application.properties文件中的端口配置:

server.port=8520
  • · 如果您想使用自己的mysql作为元数据库,请修改conf/application.properties文件中的以下配置

spring.datasource.driver-class-name=
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=

如果您使用了mysql作为自己的元数据库,启动前请在数据库执行初始化sql脚本,脚本在sql/目录下

  • · linux操作命令

前台启动
sh bin/dbApi.sh start
后台启动
sh bin/dbApi.sh -d start
关闭后台启动的进程
sh bin/dbApi.sh stop
  • · windows操作命令

前台启动
bin/dbApi.bat

或者直接双击 bin/dbApi.bat 文件启动

  • · 启动后浏览器访问 http://ip:8520 ,默认登录账户:admin/admin

Image

DELICIOUS

docker安装


docker run -d -p 8520:8520 freakchicken/db-api
  • · 启动后浏览器访问 http://ip:8520 ,默认登录账户:admin/admin


6.使用说明

创建数据源

Image

创建/修改api

Image
Image
  • · 填入路径,这就是将来http请求的路径

  • · 选择数据源,就是接口执行sql逻辑的数据库地址

  • · 填入sql ,类似mybatis的动态sql语法,不需要写最外层的select update 标签,参数名用 #{} ${} 表示,可以参考这里[1]

  • · 添加参数,参数名称就是sql中的参数名,sql中涉及到的每个参数都要填写

  • · API分组,选择api所属的分组,这个分组可以将来授权使用

  • · 访问权限,开放接口可以直接访问,私有接口需要申请tokrn才能访问

  • · 点击保存,返回api列表页面,可以看到新增一条记录

Image

api分组管理

  • · 可以添加、删除分组

    Image

api请求测试

  • · 在页面快速访问API,查看结果

    Image

创建token

Image
Image

授权token可以访问哪些api

Image

导出接口文档

  • · 可以导出接口文档(markdown格式)

    Image


7.编写规范

和mybatis动态sql语法一样,同样支持参数#{}、 ${},可以参考这里[2] ,不需要写最外层的select update 标签,直接写sql内容


8.开发指南

环境依赖

  • · 安装jdk8+

  • · 安装node.js

  • · 安装cnpm (maven 会调用cnpm 系统命令)

npm install -g cnpm --registry=https://registry.npm.

编译打包

  • · maven打包会自动把前端安装依赖并编译打包,

mvn clean package -P singleJar
mvn clean package -P tar

构建镜像

mvn docker:build -P tar
mvn docker:push -P tar

启动

前端启动:

  • · src/main/webapp 目录下 npm run serve

后端启动

  • · 启动主类com.jq.dbapi.DBApiApplication

前端访问地址:

http://localhost:8521

后端接口访问地址:

http://localhost:8520

引用链接

[1] 这里: https:///mybatis-3/zh/dynamic-sql.html
[2] 这里: https:///mybatis-3/zh/dynamic-sql.html

---The End---

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多