APIJSON 5.1.0:提升可扩展性;解决 bug;优化功能和代码;完善文档等
功能
-
请求参数校验:REFUSE 新增支持 !key 排除禁止字段,优化 MUST 和 REFUSE 处理性能;部分常量改为可自定义静态变量;
-
解决 PUT 不能完整替代 json, jsonb 字段的数组值,感谢 @weiwei162 的贡献 #387;
-
解决 Oracle 分页获取时无法获取除第一页以外的数据,感谢 @SingleDogL 的贡献 #390;
-
解决高并发下生成主键冲突导致新增记录失败等;
-
优化 SQL 执行缓存;优化角色权限、参数校验、远程函数的初始化;
-
优化登录报错和远程函数执行报错的提示;优化主键泛型;优化代码;
文档
-
更新 @combine 条件组合说明为 5.0+ 的条件任意组合格式;
-
更新 5.0 新增的 @having&:"...", @having:{...} 两种用法;
-
完善 JOIN 的类型以及 join:{...} 这种可带 ON 及功能符的写法;
-
完善 JOIN ON 的各种关联方式、支持多字段关联、支持其它条件的说明;
-
相关推荐新增 apijson在同一个接口调用中 使用远程函数写入更新时间和创建时间,感谢博主,点赞、收藏支持下博主吧~
-
生态项目新增 路由插件 apijson-router,对外暴露类 RESTful 接口,内部转成 APIJSON 接口执行,点 Star 支持下作者吧~
完整更新日志具体见 Release 发布版本。
APIJSON 简介
腾讯 APIJSON 是一种专为 API 而生的 JSON 网络传输协议 以及 基于这套协议实现的 ORM 库。
为各种增删改查提供了完全自动化的万能 API,零代码实时满足千变万化的各种新增和变更需求。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是 初创项目、内部项目、低代码/零代码、小程序、BaaS、Serverless 等。
通过万能的 API,前端可以定制任何数据、任何结构。
大部分 HTTP 请求后端再也不用写接口了,更不用写文档了。
前端再也不用和后端沟通接口或文档问题了。再也不会被文档各种错误坑了。
后端再也不用为了兼容旧接口写新版接口和文档了。再也不会被前端随时随地没完没了地烦了。
为什么选择 APIJSON?
- 解决十大痛点(APIJSON 可大幅提振开发效率、强力杜绝联调扯皮、巧妙规避文档缺陷、非常节省流量带宽等)
- 开发提速很大(CRUD 零代码热更新全自动,APIJSONBoot 对比 SSM、SSH 等保守估计可提速 20 倍以上)
- 腾讯官方开源 (使用 GitHub、Gitee、工蜂 等平台的官方账号开源,微信公众号、腾讯云+社区 等官方公告)
- 社区影响力大 (GitHub 1W+ Star 在 400W+ Java 项目中排名前 110,远超 FLAG, BAT 等国内外绝大部分开源项目)
- 各项荣誉成就 (腾讯内外 5 个奖项、腾讯开源前十、腾讯后端项目 Star 第一、GitHub Java 日周月榜大满贯 等)
- 多样用户案例(腾讯内部用户包含 互娱、音乐、云与智慧,外部用户包含 500 强上市公司、数千亿资本国企 等)
- 适用场景广泛 (社交聊天、阅读资讯、影音视频、办公学习 等各种 App、网站、公众号、小程序 等非金融类项目)
- 周边生态丰富(Android, iOS, Web 等各种 Demo、继承 JSON 的海量生态、零代码 接口测试 和 单元测试 工具等)
- 文档视频齐全 (项目介绍、快速上手、安装部署 等后端、前端、客户端的 图文解说、视频教程、代码注释 等)
- 功能丰富强大 (增删改查、分页排序、分组聚合、各种条件、各种 JOIN、各种子查询、跨库连表 等零代码实现)
- 使用安全简单(自动增删改查、自动生成文档、自动管理版本、自动控制权限、自动校验参数、自动防SQL注入等)
- 灵活定制业务 (在后端编写 远程函数,可以拿到 session、version、当前 JSON 对象 等,然后自定义处理)
- 高质可靠代码(代码严谨规范,商业分析软件源伞 Pinpoint 代码扫描报告平均每行代码 Bug 率低至 0.15%)
- 兼容各种项目(协议不限 HTTP,与其它库无冲突,对各类 Web 框架集成友好且提供 SpringBoot, JFinal 的 Demo)
- 工程轻量小巧(仅依赖 fastjson,Jar 仅 280KB,Java 文件仅 59 个共 13719 行代码,例如 APIJSONORM 4.3.1)
- 多年持续迭代(自 2016 年开源至今已连续维护 5 年多,累计 2600+ Commits、80+ Releases,不断更新迭代中...)
APIJSON 生态项目
apijson-router 【新】APIJSON 的路由插件,可控地对公网暴露类 RESTful 简单接口,内部转成 APIJSON 格式请求来执行。
hyperf-APIJSON 【新】PHP 版 APIJSON,基于 Hyperf(PHP Swoole),支持 APIJSON 多种关联和多个功能符
APIJSON.NET C# 版 APIJSON,支持大部分 APIJSON 功能,支持 MySQL, PostgreSQL, SQL Server, Oracle, SQLite
apijson-go 【新】Go 版 APIJSON,支持 单表查询、列表筛选、关联查询、多个功能符等
apijson-node 字节跳动工程师开发的 Node.ts 版 APIJSON,提供 nestjs 和 typeorm 的 Demo
uliweb-apijson Python 版 APIJSON,支持大部分 APIJSON 功能,支持 MySQL, PostgreSQL, SQL Server, Oracle 等
APIJSONBoot_Hive 【新】APIJSON + SpringBoot 连接 Hive, Hadoop 使用的 Demo
apijson-practice【新】BAT 技术专家开源的 APIJSON 参数校验注解 Library 及相关 Demo
APIJSONDemo【新】APIJSON 接入 ClickHouse 使用 Demo
APIJSONDemo_ClickHouse 【新】APIJSON + SpringBoot 连接 ClickHouse 使用的 Demo
apijson-db2 APIJSON 接入 IBM 数据库 DB2 的 Demo
light4j 整合 APIJSON 和微服务框架 light-4j 的 Demo,同时接入了 Redis
apijson-examples 关于 APIJSON 包含 admin, upms, web 的多端 Demo
感谢热心的作者们的贡献,点 ⭐Star 鼓励他们继续完善吧^_^
腾讯 APIJSON - 零代码、全功能、强安全 ORM 库
后端接口和文档零代码,前端(客户端) 定制返回 JSON 的数据和结构!
https://gitee.com/Tencent/APIJSON
创作不易、坚持更难,右上角点 ⭐Star 支持下吧 ^_^
GraphQL 是用来聚合和过滤数据的网关,不提供增删改查功能;APIJSON 提供万能的增删改查 API,零代码实现各种简单的和复杂的需求