Crabc是什么
Crabc 是一款低代码开发平台,企业级API发布管理系统,采用SpringBoot、JWT、Mybatis等框架和SPI插件机制实现。 支持(mysql、oracle、postgresql、sqlserver、elasticsearch、mongodb)等SQL或/NoSQL数据源,界面可视化编写好SQL即可快速生成一个接口对外提供服务。支持Mybatis中if等标签语法、数据转换、参数取值、以及复杂的多SQL执行并支持事务, 减少通用接口的SQL编写,让开发人员专注更复杂的业务逻辑实现。 可通过插件的方式扩展支持其他的数据源, 提供多种权限认证、限流熔断、缓存、日志监控等提供一站式API服务功能。
功能特点
- 接口开发:可视化编写SQL快速的对外发布成API接口,支持多SQL同时执行、Mybatis标签语法,实现动态SQL和动态标签
- 数据源管理:动态加载数据库,支持多种SQL/NoSQL数据库。
- 个人中心:用户管理,密码修改。
- 应用列表:Code认证、签名认证的应用创建管理以及对API调用在线授权。
- 接口管理:查看开发中和已发布的API接口,可进行上下线管理,编辑升级等
- 接口日志:查看发布的接口被调用日志列表和请求详情。
- 监控统计:可视化查看发布的API被调用统计和监控。
- 流控规则:限流、缓存、熔断、告警等。
项目结构
cn.crabc
├── crabc-boot // 业务模块
│ └── crabc-admin // 后台管理
│ └── static // 前端静态页面 [9377]
│ └── crabc-datasource // 数据源加载模块
│ └── crabc-api // API调用执行模块
│ └── crabc-spi // 插件定义模块
├── db // SQL脚本
├──pom.xml // 依赖
开源地址
github: https://github.com/pingapi/crabc-api
gitee: https://gitee.com/linebyte/crabc