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

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

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

项目亮点

核心功能解析

  1. 零代码生成API
    只需配置JSON参数,自动生成RESTful接口,支持GET/POST/PUT/DELETE全操作
// 查询用户信息及关联订单
{
  "User": {
    "id": 1,
    "@column": "id,name",
    "Order[]": {
      "userId@": "User/id",
      "@column": "id,amount,createTime"
    }
  }
}
  1. 实时文档生成
    自动生成Swagger风格接口文档,支持在线测试,开发效率提升300%

  2. 动态权限管理
    通过角色配置实现字段级权限控制,支持RBAC模型

// 权限配置示例
@MethodAccess(
    GET = {UNKNOWN, LOGIN, ADMIN},
    POST = {ADMIN}
)
public class User {}
  1. 多数据库支持
    MySQL | PostgreSQL | SQL Server | Oracle | SQLite | ClickHouse 等

  2. 智能防注入
    自动过滤危险字符,内置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>
  1. 配置数据源
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=123456
  1. 发送请求
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:智能文档生成系统

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

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

统计分析

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

项目地址

https://github.com/Tencent/APIJSON

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902460.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF 和 Avalonia 开发者的 html css 前端指南 WrapPanel 篇

本文主要是向大家列出 WPF 和 Avalonia 的 WrapPanel 在 html 和 css 的实现方法。WPF 和 Avalonia 开发者的 html css 前端指南 WrapPanel 篇笔者前端框架使用的是 Vue3 + Deno。 笔者主要会以 Avalonia 作为 C# 技术部分的示例。 本文主要是向大家列出 WPF 和 Avalonia 的 Wr…

os管理文件和open创建文件

目录os基础操作获取当前工作目录更改工作目录列出目录内容创建目录删除目录、文件文件重命名路径拼接与拆分判断路径是否存在递归遍历目录open创建文件读取模式下写入模式下 os基础操作 获取当前工作目录 import os #返回的是一个绝对路径 print(f"当前的工作目录为:{os.…

【VMware VCF】VMware Cloud Foundation 5.2.1.1

如果你尝试访问 KB 52520 并跟踪 VMware Cloud Foundation 发行版本,可能会发现当前最新版本是 VMware Cloud Foundation 5.2.1。如果登录 SDDC Manager UI,导航到生命周期管理->发行版本,从这里查看 VCF 的版本也是同样如此(如下图所示)。但是,如果查看 VMware Cloud…

注意力机制流程图

知识是我们已知的也是我们未知的基于已有的知识之上我们去发现未知的由此,知识得到扩充我们获得的知识越多未知的知识就会更多因而,知识扩充永无止境

26-搭建审计迷你天猫商城python相关知识

1、搭建迷你天猫商城系统并复现log4j2 、fastjson命令执行、sql注入漏洞 搭建迷你天猫商城下载源码配置数据库(5.7.26)将数据库文件导入,,修改 application.properties中 的数据库账号密码 当数据库版本 > 5.7 时会报 GROUP BY 语句的错误,所以还需要修改 MySQL 5.7.26…

焊接保护气体自适应调节装置

机器人焊接节气这一术语,指的是在焊接作业流程中,借助特定的技术手段或专业装置,旨在有效缩减焊接气体的使用量,进而达成资源节约与成本控制的双重目标。这一技术精髓在于对焊接气体流量的智能化调控,使之与焊接电流形成精准匹配,从而杜绝气体的无谓损耗。焊接气体自适应…

华为Pura X首发搭载鸿蒙5,应用市场体验再升级

3月20日,华为Pura先锋盛典及鸿蒙智行新品发布会如期举行,正式推出首款搭载HarmonyOS 5的新形态阔折叠手机Pura X,硬件设计实现突破性创新。生态上,鸿蒙应用市场(AppGallery)也完成全新升级,整合了生活、娱乐、办公、金融等多元场景,精准满足用户需求,实现应用高效获取…

Portainer学习笔记2

使用portainer添加docker swarm集群,然后部署redis主从集群 docker swarm集群部署参考:https://blog.csdn.net/backtwo/article/details/143334089 需要提前在swarm 的manage节点上生成TLS证书,用来加密开启docker远程连接协议。[root@park2-0006 uniapply]# mkdir /etc/doc…

WPF 和 Avalonia 开发者的 html css 前端指南 StackPanel 篇

本文主要是向大家列出 WPF 和 Avalonia 的 StackPanel 在 html 和 css 的实现方法。WPF 和 Avalonia 开发者的 html css 前端指南 StackPanel 篇笔者前端框架使用的是 Vue3 + Deno。 笔者主要会以 Avalonia 作为 C# 技术部分的示例。 本文主要是向大家列出 WPF 和 Avalonia 的 …

维修松下机器人G3示教器通电不显示的问题

示教器作为一种先进的工具,被广泛应用于机器人的控制编程中,它不仅能够定义机器人的具体行为和任务,还能实时地监测到机器人的多种状态信息,诸如位置、速度以及负载等关键数据。一旦遇到紧急情况,示教器能够迅速执行急停操作,从而确保整个系统的安全无虞。当面对松下焊接…

第一组可行性分析

第1章 系统分析 1.1 可行性分析 本项目“电磨房——智能家居配置系统”是一款基于微信小程序的家庭用电管理工具,旨在通过智能化手段帮助用户优化用电策略、降低电费支出。以下从技术、经济、社会和法律四个维度分析其可行性。 1.1.1 技术可行性分析 团队具备全栈开发能力:前…