它能让后端不用写一行接口代码,前端直接按需要数据。
你不用改数据库结构,也不用等后端排期——只要表建好了,立刻能查、能删、能关联、能权限控制。
这不是给程序员看的“开发框架”,是给产品、测试、甚至运营也能上手调接口的工具。
它替你省掉了什么
它不替代某个具体收费软件,但切掉了三类真金白银的支出:一是外包公司按接口个数收的钱,一个简单用户查询接口动辄 300–800 元;二是团队里专职后端写 CRUD 接口的时间成本,一个中型项目光基础增删改查就得干掉 2–3 周;三是为快速验证需求临时搭 mock 服务的运维开销。
后端写接口的活,其实早就不该是体力劳动了。
官方 Demo 里连 MySQL、PostgreSQL、Oracle、达梦、DuckDB、ClickHouse、Elasticsearch、Redis、Kafka 都支持——不是“理论上能接”,而是每种数据库都有现成可运行的示例工程。
比如 PostgreSQL 示例在 /APIJSON-Demo/tree/main/PostgreSQL 目录下,含完整建表语句、配置文件和测试请求;Elasticsearch 示例则明确使用 APIJSONDemo-MultiDataSource-Elasticsearch 工程,已预置索引映射与字段权限规则。
这意味着你不用为换数据库重写整套接口层。切换时只需改 application.yml 里的数据源配置,再把新库的表名加进白名单即可。
价格直接砍到零。
核心功能
- 前端自己拼 JSON 请求,后端自动解析成 SQL 并返回对应结构的数据。比如发一个 { “User”: { “id@”: 123, “name”: “”, “sex”: “” } },它就查出 id=123 的用户姓名和性别,字段名、嵌套层级、是否分页全由前端定,后端不改代码。其中
id@表示条件字段,""表示需返回该字段值,@page和@count可直接控制分页参数。 - 不用写文档。每个接口的请求格式、返回字段、权限规则,都直接从代码注释和配置里自动生成。你点开网页就能试,还能一键导出 OpenAPI 格式,给 Swagger 或 Apifox 用。导出入口在管理后台的「文档」页,点击「生成 OpenAPI v3」按钮即得标准 JSON 文件。
- 权限不是靠 if-else 硬写。它用 JSON 规则定义谁能看到哪些字段、哪些行。比如“普通用户只能看自己的订单”,规则写成
"Order": {"userId@": "$user.id"};“管理员能看到全部”则设为"Order": {"@role": "ADMIN"}。这些规则存在数据库的apijson_rule表或配置文件中,修改后无需重启服务。 - 支持多数据源混合查询。一次请求能同时查 MySQL 里的用户、Elasticsearch 里的日志、Redis 里的缓存状态,最后合成一个 JSON 返回。不用你写 join,也不用协调三个服务的响应时序。例如请求中
"User"走 MySQL,"Log"走 ES,"CacheStatus"走 Redis,APIJSON 自动路由并合并结果。 - 自带登录态管理与访问频率控制。登录后自动绑定用户 ID,后续所有请求自动带上权限上下文;还能按 IP、用户、接口路径限流,防刷也防误操作。限流策略配置在
apijson_rate_limit表中,支持滑动窗口与令牌桶两种算法。 - 有现成的 Android 和 iOS SDK。App 里不用封装 Retrofit 或 URLSession,直接传 JSON 请求对象,SDK 自动处理加密、重试、离线缓存和错误提示。Android SDK 提供
APIJSONRequest类,iOS 提供APIJSONClient类,均内置 HTTPS 证书校验与请求签名逻辑。
三步上手
- 去 GitHub 页面下载最新版 APIJSONBoot-MultiDataSource 工程(带“Boot”字样的那个),解压后双击 start.bat(Windows)或 start.sh(Mac/Linux) 启动服务,默认监听 8080 端口。启动日志中会显示
Started APIJSONBootApplication in X seconds,表示服务就绪。 - 打开浏览器访问 http://localhost:8080/api/test,页面里选一个预置示例(比如“查询用户列表”),点“发送”,就能看到返回的 JSON 数据。这个页面本身也是用 APIJSON 自己驱动的,所有按钮行为都走真实接口。
- 把你的数据库连接信息填进工程里的 application.yml 文件,再把表名加到 APIJSON 的白名单配置里,保存重启,你的表就立刻能被前端调用了。白名单配置项为
apijson.table.whitelist,支持通配符如user*,也支持逗号分隔的精确表名列表。
项目信息
APIJSON/APIJSON
GitHub
🏆 Real-Time no-code, powerful and secure ORM 🚀 providing APIs and Docs without coding by Backend, and Frontend(Client) can customize response JSONs 🏆
18.4k
Stars
2.3k
Forks
Java
NOASSERTION





