所有文章 > API产品 > 国产最强开源 API 数据库接口,没有之一,不接受任何反驳!-DBApi

国产最强开源 API 数据库接口,没有之一,不接受任何反驳!-DBApi

在现在流行微服务、前后端分离软件开发架构下,基于标准RESTful/JSONHTTP接口已经成为主流。在实际业务中有很多需要快速开发调用数据服务接口的需求,但团队中缺乏专业的后端开发人员,比如:

(1)数据库表已存在,如何快速把数据变成服务,供报表、大屏等数据可视化方式使用。

(2)移动APP/H5/小程序开发,前端程序员快速开发后端接口进行接口调用和联调测试。

(3)数据中台架构中,企业数据资产对外快速发布http服务及统一管理。

如果是Java语言开发,正常开发一个RESTful接口服务流程如下:

引入springboot框架,编写Spring MVC的Controller类代码,引入mybatis等ORM框架,编写SQL语句或DAO接口,才能把数据库数据的增删改查操作发布成基于HTTP协议的API接口。

    下面小编推荐一款基于无代码/低代码技术,快速开发数据库HTTP服务接口的开源框架/工具-DBApi。

DBApi简介

  • 狭义上说,DBAPI是一个面向数仓开发人员的低代码工具,只需在页面上编写sql,并配置好参数,就可以自动生成http接口。它可以帮助程序员快速的开发后端数据接口,尤其适用于BI报表、数据可视化大屏的后端接口开发。
  • 广义上说,DBAPI是整个企业数据接口的管理中心,是企业对外提供数据服务的管理平台它提供了数据接口的动态创建发布功能,对接口的统一管理,并提供了对客户端的管理能力,可以监控客户端对接口的调用、控制客户端对接口的权限

DBApi特点

  • 开箱即用,不需要编程,单机模式不需要依赖其他软件(只需要java运行环境)
  • 支持单机模式、集群模式,支持windows Linux Mac
  • 支持动态创建、修改API;动态创建、修改数据源。热部署全程无感。
  • 支持API级别的访问权限控制,支持IP白名单、黑名单控制
  • 支持所有类型数据库(JDBC协议),包括mysql/sqlserver/postgreSql/hive/oracle等等
  • 支持动态sql,类似mybatis的动态sql,支持sql编辑、运行、调试
  • 丰富的插件扩展,支持缓存、数据转换、失败告警
  • 支持API配置导入导出,方便测试环境到生产环境的API迁移
  • 支持一个接口内多条SQL执行(例如分页功能),支持事务开启关闭
  • 支持复杂嵌套json传参
  • 支持接口调用记录查询,接口访问信息统计

DBApi 实践应用

DBApi 可广泛应用于需要数据库操作的各种场景,例如:

  • Web开发:构建动态网站时,用于数据的增删改查。
  • 数据分析:处理大量数据,进行统计分析和存储结果。
  • 微服务架构:在分布式系统中,作为通用的数据库访问层。
  • CLI工具:快速开发命令行工具,读写数据库信息。
  • 测试框架:设置和清理测试数据。

DBApi部署

    DBApi 是一款优秀的数据库抽象层,它的存在让开发者能够更加专注于业务逻辑,而非底层数据

  • 依赖java环境,先自行在服务器安装jdk8+,并配置环境变量
  • 下载安装包解压到需要安装的目录
  • 修改conf/application.properties文件中的以下配置

如果配置了mysql作为元数据库,请先在mysql执行初始化脚本sql/ddl_mysql.sql 如果配置了日志数据库地址,请先在日志数据库执行初始化脚本,DBAPI提供了clickhouse和mysql的脚本:sql/access_log_clickhouse.sqlsql/access_log_mysql.sql

  • Linux一键启停
sh bin/dbapi-daemon.sh start standalone

sh bin/dbapi-daemon.sh stop standalone
  • 如果是windows操作系统请右键点击bin/dbapi.ps1文件,选择使用PowerShell运行

注意windows系统只支持standalone模式运行,不支持集群模式

  • 第一次启动系统会自动退出,需要激活,激活后重启即可使用
  • 浏览器访问http://192.168.xx.xx:8520进入UI

使用截图

总结

    DBApi 是一款优秀的数据库抽象层,它的存在让开发者能够更加专注于业务逻辑,而非底层数据库的差异性。无论你是新手还是经验丰富的开发者,DBApi 都值得你尝试并加入你的开发工具箱。现在就去探索这个项目,体验它带来的便利吧!
开源地址:https://gitee.com/freakchicken/db-api

本文章转载微信公众号@予墨致远

#你可能也喜欢这些API文章!