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

嗨,大家好,我是小华同学,关注我们获得"最新、最全、最优质"开源项目和高效工作学习方法

"🏆 实时零代码、全功能、强安全 ORM 库 🚀 后端接口和文档零代码,前端定制返回 JSON 的数据和结构"

项目亮点

核心功能解析

  1. 零代码生成API
    只需配置JSON参数,自动生成RESTful接口,支持GET/POST/PUT/DELETE全操作
json 复制代码
// 查询用户信息及关联订单
{
  "User": {
    "id": 1,
    "@column": "id,name",
    "Order[]": {
      "userId@": "User/id",
      "@column": "id,amount,createTime"
    }
  }
}
  1. 实时文档生成

自动生成Swagger风格接口文档,支持在线测试,开发效率提升300% 3. 动态权限管理

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

kotlin 复制代码
// 权限配置示例
@MethodAccess(
    GET = {UNKNOWN, LOGIN, ADMIN},
    POST = {ADMIN}
)
public class User {}
  1. 多数据库支持

MySQL | PostgreSQL | SQL Server | Oracle | SQLite | ClickHouse 等 5. 智能防注入

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

技术架构揭秘

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

应用场景大全

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

某电商App使用APIJSON后:

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

场景2:低代码平台构建

通过配置JSON实现:

perl 复制代码
{
  "Product": {
    "@column": "id,name,price",
    "@order": "sales-desc",
    "@count": 10
  }
}

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

场景3:微服务架构支持

typescript 复制代码
// 分布式事务配置
@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依赖
xml 复制代码
<dependency>
    <groupId>com.tencent</groupId>
    <artifactId>apijson-boot</artifactId>
    <version>5.2.0</version>
</dependency>
  1. 配置数据源
ini 复制代码
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
  1. 发送请求
json 复制代码
curl -X POST http://localhost:8080/get \
-H "Content-Type: application/json" \
-d '{"User":{"@column":"id,name"}}'

高级功能示例

跨表联查

json 复制代码
{
  "User": {
    "id": 1,
    "Order[]": {
      "userId@": "User/id",
      "Product": {
        "orderId@": "Order/id"
      }
    }
  }
}

事务处理

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

项目效果

项目生态

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

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

并发数 平均响应时间 吞吐量
100 23ms 4320/s
500 45ms 11025/s
1000 82ms 12100/s

统计分析

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

项目地址

github.com/Tencent/API...

相关推荐
你怎么知道我是队长3 小时前
GO语言---匿名函数
开发语言·后端·golang
G探险者7 小时前
为什么 Zookeeper 越扩越慢,而 Nacos 却越扩越快?
分布式·后端
不太厉害的程序员7 小时前
NC65配置xml找不到Bean
xml·java·后端·eclipse
不被定义的程序猿7 小时前
Golang 在 Linux 平台上的并发控制
开发语言·后端·golang
Mr.stupidCoder7 小时前
Git将本地文件推送到GitHub仓库
git·elasticsearch·github
AntBlack8 小时前
Python : AI 太牛了 ,撸了两个 Markdown 阅读器 ,谈谈使用感受
前端·人工智能·后端
mikes zhang8 小时前
Flask文件上传与异常处理完全指南
后端·python·flask
Pitayafruit9 小时前
跟着大厂学架构01:如何利用开源方案,复刻B站那套“永不崩溃”的评论系统?
spring boot·分布式·后端
方圆想当图灵9 小时前
深入理解软件设计:领域驱动设计 DDD
后端·架构
excel9 小时前
MySQL 9 在 Windows 上使用 mysqld --initialize-insecure 无响应的排查与解决方案
后端