技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%

2019 年 5 月 29 日
 TommyLemon

APIJSON 3.5.0-3.5.7 更新内容:

具体见 Release 发布版本

APIJSON 简介

APIJSON 是一种为 API 而生的 JSON 网络传输协议。
简单的增删改查、复杂的查询、简单的事务操作 提供了完全自动化的 API。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是互联网创业项目企业自用项目

多表关联查询、结构自由组合、多个测试账号、一键共享测试用例

自动生成封装请求 JSON 的 Android 与 iOS 代码、一键下载自动生成的 JavaBean

自动保存请求记录、自动生成接口文档,可添加常用请求、快捷查看一键恢复

一键自动接口回归测试,不需要写任何代码(注解、注释等全都不要)

第三方机构对 APIJSON 的代码扫描,测试结果可靠性高达 99.85%

APIJSON 用 SpringBoot 提供了自动化 API,

自动将前端传的 JSON 参数转为 SQL 语句执行并返回结果,

期间自动校验权限、结构、内容,自动防 SQL 注入,

提供自动化的各种 JOIN(INNER, LEFT, RIGHT 等),

还支持多字段排序 order by,多字段分组 group by,聚合函数 having

等几乎所有 MySQL,PostgreSQL,Oracle 的常规功能。

通过自动化 API,前端可以定制任何数据、任何结构!

大部分 HTTP 请求后端再也不用写接口了,更不用写文档了!

前端再也不用和后端沟通接口或文档问题了!再也不会被文档各种错误坑了!

后端再也不用为了兼容旧接口写新版接口和文档了!再也不会被前端随时随地没完没了地烦了!

在线解析

对于前端

对于后端

🏆码云最有价值开源项目 🚀后端接口和文档自动化,前端(客户端) 定制返回 JSON 的数据和结构!

创作不易,GitHub 右上角点 ⭐Star 支持下吧,谢谢^_^

https://github.com/APIJSON/APIJSON

29484 次点击
所在节点    程序员
206 条回复
omph
2019 年 5 月 30 日
@murmur 你是要捧杀楼主?
大家批的是比较浮夸的宣传风,并没有否定其技术价值
其实我已经 star,并考虑在小项目里试试了,只是感觉这样的宣传是在拉后腿
likaka
2019 年 5 月 30 日
重复造轮子
TommyLemon
2019 年 5 月 30 日
@yinzhili 请问你说的是哪个工程的代码?
如果是 APIJSON-Java-Server,已经有人测试过,可靠度 99.85%
https://github.com/APIJSON/APIJSON/issues/48

至于代码风格,主观感受各不一样,我们可以对照下阿里的 P3C Java 规范哦
https://github.com/alibaba/p3c
TommyLemon
2019 年 5 月 30 日
@likaka 麻烦把类似的轮子发出来对比下,不要空口无凭谢谢
Huelse
2019 年 5 月 30 日
已 Start,且不论质量如何,楼主敢在 v2 发想必就已经做好了被挑刺的准备
TommyLemon
2019 年 5 月 30 日
@ianva
@tt67wq
@MissThee
@lijingyu68
@deadEgg
@wangxiaoaer
APIJSON 在安全上做了大量的自动防护和优化。
自动校验权限、结构、内容,自动限流过载保护,
自动防 SQL 注入,自动防误删误改数据。
https://github.com/APIJSON/APIJSON/issues/14/

攻击 GraphQL 的手段可多了
max.book118.com/html/2018/0919/5102220134001314.shtm

欢迎大家也在 APIJSON 上试试,成功了给 APIJSON 发个 issue:
APIJSON 源码,项目环境,攻击方式 /源码

APIJSON 全方面对比开源社区影响力前 3 的明星公司 “ Facebook ” 开发的 GraphQL:
基础功能、权限控制、表关联查询
https://github.com/APIJSON/APIJSON/issues/63/
TommyLemon
2019 年 5 月 30 日
@TommyLemon 这几个方面 APIJSON “完爆” GraphQL,不服来辩,show me your evidence
TommyLemon
2019 年 5 月 30 日
TommyLemon
2019 年 5 月 30 日
@Huelse 感谢支持
TommyLemon
2019 年 5 月 30 日
很多压根就没仔细看过 文档 /Demo/视频 /源码,凭主观感受胡乱评价,凭空歪曲事实。还有人身攻击的(可见素质之低)
yun33133
2019 年 5 月 30 日
V 站喷子一大堆,敢在 V 站发项目,勇气可嘉啊。不过这套东西还是很不错的,对中小公司来说
Feedline
2019 年 5 月 30 日
感觉适用性不强,毕竟为了 CURD 而引入一个包,我个人是不太乐意的。希望楼主加油吧。
TommyLemon
2019 年 5 月 30 日
@yun33133 唉,是啊,还有很多人自己没有判断力,也不去验证,人云亦云,被这帮人误导了
TommyLemon
2019 年 5 月 30 日
@Feedline ORM 适用场景还是很广泛的,至于具体到你的项目,那就具体分析了,不适合的场景也不建议使用
TommyLemon
2019 年 5 月 30 日
@Feedline APIJSON 的核心是基于 APIJSON 协议开发的后端 ORM 库 APIJSONORM,对数据库全自动 CRUD,
它只有 49 个 Java 类( 4 个 package_info.java 可有可无就不算了),只依赖 fastjson 一个库,非常轻量。
https://github.com/APIJSON/APIJSON/tree/master/APIJSON-Java-Server

打包出来的 apijson-orm-3.5.7.jar 只有 254 KB,且它里面没有 fastjson 的源码,也就不会冲突,
在你自己的工程里用 Maven(pom.xml)/Gradle(build.gradle) 或直接 jar /工程 等方式依赖 fastjson 即可。
https://github.com/APIJSON/APIJSON/tree/master/APIJSON-Java-Server/APIJSONBoot/libs
fghjghf
2019 年 5 月 30 日
先不说别的暴不暴露了,那 protobuf 呢,或者其他协议格式呢?
kiinlam
2019 年 5 月 30 日
说几句实际场景会遇到的:
1、看着有点类似 graphQL,我试用过 graphQL,发现一旦涉及复杂查询,比如多层嵌套,请求等待时间会很久,可以做缓存,但命中率得看前端发起的查询是否不变,所以性能方面还是很担忧的,不知道你这套方案在性能方面有没有相关评测?
2、需求变化或后端擦屁股问题。很多企业,特别是中小企业,追求一个字:快。美曰其名“敏捷开发”。然后经常改需求,今天刚上线,产品经理就来了,要改东西,或者 bug 来了,要修复。很多时候,问题只涉及到接口数据问题,通常是找后端做适配。但如果改用前端来主导查询内容,前端网页还好,改下请求内容,重新部署,就搞定了,客户端可就悲剧了,要重新发包,上新版本,这种情况怎么办。
beidounanxizi
2019 年 5 月 30 日
@TommyLemon 看老哥这么认真回喷 我认为对自己做的项目还是有成就感的 这点足以 项目本身质量不做评价
stillyu
2019 年 5 月 30 日
我自己的后端框架,建好表了就会自动生成简单的增删改查的控制器,包括分页,关键词查询等。这样就不需要你这个了。
wanzy
2019 年 5 月 30 日
求求你别刷了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/568631

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX