
雨落屋檐的瞬间 已是我们全部的缘分
APIJSON 是腾讯开源的一款 专为 API 而生的 JSON 网络传输协议 与 ORM 库,其核心理念是:
“前端定制返回 JSON 的数据和结构,后端零代码实现万能通用增删改查。”

想象一下传统开发:后端写一堆Controller,处理跨库JOIN、嵌套子查询、权限校验,还要防SQL注入;前端每次改需求,就得找后端改接口,沟通成本爆炸。APIJSON直接砍掉这些痛点。
它彻底改变了传统前后端协作开发模式:
传统模式 | APIJSON 模式 |
|---|---|
前端需求 → 后端改接口 → 写文档 → 联调 | 前端直接写请求 JSON → 后端通用接口自动响应 |
每次变更都要改代码、测接口、更新文档 | 零代码热更新,实时生效 |
接口版本管理繁杂 | 永久兼容,无需划分版本 |
💡 一句话总结:“所求即所得,要啥有啥。”
而且,目前APIJSON已经发展到8版本了, Github Star数量为18k,Fork数量为2.4k,目前在腾讯开源的Java项目中排名第2,牛逼成都不言而喻。
✅ 零代码 CRUD 自动支持:单表/多表关联、JOIN、子查询、分页、排序、聚合、跨库连表等,效率至少提升20倍。
✅ 强安全性保障
Access 表配置)Request 表 + 远程函数)✅ 自动生成文档 请求即文档,无需人工编写与维护,支持静态检查与光标悬停注释。
✅ 高灵活性 & 扩展性
apijson-router, apijson-column, apijson-mongodb 等✅ 极致轻量高效
以「查询用户 id=70793 信息 + 他发布的前 2 条动态 + 每条动态的前 3 条评论」为例:
{
"User":{
"id":70793
},
"Moment[]":{
"userId":70793,
"count":2
},
"[]":{
"count":3,
"Moment":{
"id@":"/Moment[]/id"
},
"Comment[]":{
"momentId@":"[]/Moment/id"
}
}
}🔔 注意: - 表名首字母大写(如
User,Moment) -@符号用于引用路径(如id@: "/Moment[]/id") - 所有字段名、关键词大小写敏感、空格敏感
APIJSON 多表关联查询、结构自由组合

APIAuto 自动生成前端(客户端)请求代码 和 Python 测试用例代码,支持一键下载

使用 APIAuto(APIJSON 官方测试工具)一键测试:

▲ 使用 APIAuto 编写请求、查看响应、生成前端代码
响应示例(精简):
{
"User":{
"id":70793,
"name":"Tommy",
"sex":1
},
"Moment[]":[
{
"id":15,
"content":"Hello APIJSON!",
"Comment[]":[
{"id":1,"content":"666"},
{"id":2,"content":"强!"},
{"id":3,"content":"求教程"}
]
},
{
"id":14,
"content":"零代码真香",
"Comment[]":[
{"id":4,"content":"已 star"}
]
}
],
"ok":true,
"code":200
}✅ 一次请求,任意嵌套结构;所见即所得,精准返回所需数据!
APIJSON 默认禁止所有访问,需主动配置:
Access 表)INSERTINTO`Access`(`id`,`method`,`tag`,`role`,`permission`)
VALUES
(1,'GET','User','LOGIN','id,name,sex'),-- 登录用户可查 User 的部分字段
(2,'POST','User','ADMIN','id,name,sex,phone,mail');-- 管理员可新增全字段Request 表 + 远程函数){
"User":{
"name?":"REGEXP ^[\\u4e00-\\u9fa5]{2,4}$"
}
}→ 校验 name 必须为 2~4 位中文。
自定义函数(Java):
publicObjectverifyName(Session session,Object object,String methodName,String tag){
JSONObject req =(JSONObject) object;
String name = req.getString("name");
if(!name.matches("^[\u4e00-\u9fa5]{2,4}$")){
thrownewIllegalArgumentException("姓名必须为2-4个汉字");
}
returnnull;// 无异常即通过
}公司 | 应用场景 |
|---|---|
腾讯(IEG、微信、音乐) | 内部数据中台、管理后台 |
华为 | 快速搭建内部系统 |
百度智慧城市 | 协议层统一数据接口 |
圆通速递 | 物流信息查询系统 |
传音控股 | 海外 App 后台服务 |

以下为 SSMH(传统框架) vs APIJSONBoot 开发耗时估算:
表数 | 字段数/表 | SSMH 用时 | APIJSONBoot 用时 | 提速 |
|---|---|---|---|---|
10 | 10 | 8550 min(≈142h) | 320 min(≈5.3h) | 26.7× |
50 | 20 | 176750 min(≈2945h) | 3100 min(≈52h) | 57× |
📌 某腾讯 IEG 负责人评价: “APIJSON 可做到零代码生成接口和文档,当企业有元数据时,马上就可以获得接口。”
维度 | 价值 |
|---|---|
💰 降本 | 节省 70%+ 后端接口开发时间,减少沟通成本 |
⚡ 提效 | 需求变更 → 前端改 JSON → 实时生效 |
🔐 安全 | 权限粒度到行、字段,自动防注入 |
🌐 生态 | 多语言、多数据库、多工具链支持 |
🚀 未来 | 适配低代码/Serverless/小程序趋势 |
✅ 适合场景: 创业项目|内部系统|管理后台|小程序|数据中台|API 网关底层引擎