编程 17.6K star!后端接口零代码的神器来了,腾讯开源的ORM库太强了!

2025-03-21 15:25:41 +0800 CST views 579

17.6K star!后端接口零代码的神器来了,腾讯开源的ORM库太强了!

🏆 实时零代码、全功能、强安全 ORM 库 🚀

后端接口和文档零代码,前端定制返回 JSON 的数据和结构


📌 项目亮点

核心功能解析

🔹 零代码生成API

只需配置JSON参数,自动生成RESTful接口,支持GET/POST/PUT/DELETE全操作

{
  "User": {
    "id": 1,
    "@column": "id,name",
    "Order[]": {
      "userId@": "User/id",
      "@column": "id,amount,createTime"
    }
  }
}

🔹 实时文档生成

自动生成Swagger风格接口文档,支持在线测试,开发效率提升300%

🔹 动态权限管理

通过角色配置实现字段级权限控制,支持RBAC模型

@MethodAccess(
    GET = {UNKNOWN, LOGIN, ADMIN},
    POST = {ADMIN}
)
public class User {}

🔹 多数据库支持

MySQL | PostgreSQL | SQL Server | Oracle | SQLite | ClickHouse 等

🔹 智能防注入

自动过滤危险字符,内置SQL预编译机制


🔍 技术架构揭秘

模块核心技术特性说明
协议层JSON + HTTP标准化接口规范
解析引擎自研SQL生成器支持复杂嵌套查询
权限控制RBAC模型字段级访问控制
数据库适配JDBC + 多数据源驱动跨数据库兼容
文档生成Swagger集成实时同步接口文档

🎯 应用场景大全

✅ 场景1:移动应用后端开发

某电商App使用APIJSON后:

  • 接口开发时间 从3天缩短至2小时
  • 订单查询接口性能 提升5倍
  • 文档维护成本 降低90%

✅ 场景2:低代码平台构建

通过配置JSON实现:

{
  "Product": {
    "@column": "id,name,price",
    "@order": "sales-desc",
    "@count": 10
  }
}

自动生成热销商品排行榜接口

✅ 场景3:微服务架构支持

@Transaction
public class OrderService {
    @JSONRequest(url = "http://inventory-service/updateStock")
    public void createOrder() {...}
}

✅ 场景4:数据中台建设

支持同时连接:

  • MySQL(业务数据)
  • ClickHouse(分析数据)
  • SQL Server(历史数据)
    实现跨库联合查询

🔥 同类项目对比

项目开发效率学习成本功能特性安全性
APIJSON⭐⭐⭐⭐⭐⭐⭐全功能支持军工级
PostgREST⭐⭐⭐⭐⭐⭐基础CRUD中等
Hasura⭐⭐⭐⭐⭐⭐⭐GraphQL支持较强
GraphQL⭐⭐⭐⭐⭐⭐⭐灵活查询需配置

🚀 项目实战指南

🔹 三步快速入门

1️⃣ 添加Maven依赖

<dependency>
    <groupId>com.tencent</groupId>
    <artifactId>apijson-boot</artifactId>
    <version>5.2.0</version>
</dependency>

2️⃣ 配置数据源

spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456

3️⃣ 发送请求

curl -X POST http://localhost:8080/get \
-H "Content-Type: application/json" \
-d '{"User":{"@column":"id,name"}}'

🏆 高级功能示例

🔹 跨表联查

{
  "User": {
    "id": 1,
    "Order[]": {
      "userId@": "User/id",
      "Product": {
        "orderId@": "Order/id"
      }
    }
  }
}

🔹 事务处理

@Transaction
@JSONRequest
public class OrderController {
    public String createOrder(Order order) {
        // 自动事务管理
    }
}

📌 项目生态

  • APIJSON-Android:移动端快速开发框架
  • APIJSON-Boot:SpringBoot深度整合方案
  • APIJSON-UI:可视化接口配置平台
  • APIJSON-DOC:智能文档生成系统

📊 性能数据(数据仅供参考)

并发数平均响应时间吞吐量
10023ms4320/s
50045ms11025/s
100082ms12100/s

🌍 统计分析

腾讯、华为、阿里巴巴、美团、字节跳动、百度、京东、网易、快手等和 Google, Apple, Microsoft, Amazon, Paypal, IBM, Shopee 等 数百名知名大厂员工点了 Star,也有腾讯、华为、字节跳动、Microsoft、Zoom 等不少知名大厂员工提了 PR/Issue,感谢大家的支持~


🔗 项目地址

APIJSON GitHub


推荐文章

Vue3中如何实现插件?
2024-11-18 04:27:04 +0800 CST
Rust 高性能 XML 读写库
2024-11-19 07:50:32 +0800 CST
# 解决 MySQL 经常断开重连的问题
2024-11-19 04:50:20 +0800 CST
一键配置本地yum源
2024-11-18 14:45:15 +0800 CST
底部导航栏
2024-11-19 01:12:32 +0800 CST
Vue3中如何处理WebSocket通信?
2024-11-19 09:50:58 +0800 CST
25个实用的JavaScript单行代码片段
2024-11-18 04:59:49 +0800 CST
Elasticsearch 文档操作
2024-11-18 12:36:01 +0800 CST
全栈工程师的技术栈
2024-11-19 10:13:20 +0800 CST
Dropzone.js实现文件拖放上传功能
2024-11-18 18:28:02 +0800 CST
php strpos查找字符串性能对比
2024-11-19 08:15:16 +0800 CST
回到上次阅读位置技术实践
2025-04-19 09:47:31 +0800 CST
Go 接口:从入门到精通
2024-11-18 07:10:00 +0800 CST
支付轮询打赏系统介绍
2024-11-18 16:40:31 +0800 CST
Go 语言实现 API 限流的最佳实践
2024-11-19 01:51:21 +0800 CST
html流光登陆页面
2024-11-18 15:36:18 +0800 CST
mysql时间对比
2024-11-18 14:35:19 +0800 CST
维护网站维护费一年多少钱?
2024-11-19 08:05:52 +0800 CST
Vue3如何执行响应式数据绑定?
2024-11-18 12:31:22 +0800 CST
Vue3中的v-for指令有什么新特性?
2024-11-18 12:34:09 +0800 CST
Vue3中的事件处理方式有何变化?
2024-11-17 17:10:29 +0800 CST
程序员茄子在线接单