APIJSON 3.2.0 发布, 4K Star 与 Hibernate 拉开差距

2018-12-20 10:17:38 +08:00
 TommyLemon

https://www.timqian.com/star-history/#TommyLemon/APIJSON&hibernate/hibernate-orm

APIJSON 3.1.1-3.2.0 更新内容:

对于前端

对于后端


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


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


自动保存请求记录、自动生成接口文档


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

APIJSON 生态内项目:

新鲜出炉的 Python 版  APIJSON 除了基本的查询(分页、排序等),还实现了自动化的权限控制。

给热心的作者们点 Star 支持下吧 ^_^

项目主页(源码、文档、视频、生态 等)

https://github.com/TommyLemon/APIJSON

10398 次点击
所在节点    程序员
76 条回复
royzxq
2018-12-21 13:11:43 +08:00
单纯的 reply #51
8102 年了,async/await 了解一下。
qqqss
2018-12-21 13:45:08 +08:00
1. 后端查询条件规则,比如某条记录根据状态字段查询,有些记录是所有人可见,有些记录是创建者私有,如何实现?
qqqss
2018-12-21 13:46:36 +08:00
2. 后端查询条件规则,某条记录的某个字段,对一部分人可见,一部分人不可见,如何实现?
TommyLemon
2018-12-21 14:57:37 +08:00
@jimchen9999
官网的例子
```js
var context = new SchoolContext();
var students = (from s in context.Students
where s.FirstName == "Bill"
select s).ToList();
```
http://www.entityframeworktutorial.net/basics/how-entity-framework-works.aspx

确实比很多 ORM 库写法简单不少,但 APIJSON 压根就不用后端写这些代码,前端传 JSON 参数过来就行了
```
{
"[]": {
"Student": {
"firstName": "Bill"
}
}
}
```
可以把里面的 Student 提取出来
```
{
"Student[]": {
"Student": {
"firstName": "Bill"
}
}
}
```
还可以把里面的 Student 的 firstName 提取出来
```
{
"Student-firstName[]": {
"Student": {
"firstName": "Bill"
}
}
}
```
都不用前端遍历再取值了。
TommyLemon
2018-12-21 15:09:36 +08:00
@royzxq 原本 Node.js 有这种库,后面 ES6 加进来作为标准语法,
但问题是接手一个两年的项目,里面几十万行代码,基础设施敢随便升级?
出现生产事故别说奖金没了,可能还得扣工资。
而且即便用上了语法糖,一个请求能解决的为啥非得多个请求?
不仅代码写起来麻烦,http 连接也要多次,延时是累加的。
kevinle
2018-12-21 15:27:41 +08:00
想问一下和.net 的 EF 比有什么优势和劣势
jiangnanyanyu
2018-12-21 15:29:28 +08:00
eeeee 也好多 k star,然而没啥意义。还是得点个赞,开发不易
TommyLemon
2018-12-21 15:53:12 +08:00
@qqqss 欢迎提问,而不是没搞清楚就随便吐槽。
APIJSON 提供了自动化的权限管理,OWNER 指当前登录用户, LOGIN 指任何登录用户,UNKNOWN 指未登录用户,
给 表对应的 JavaBean 配置访问权限,然后 Request 表里配置对应的校验和补全规则即可。
https://juejin.im/post/5b17518c6fb9a01e75463096
TommyLemon
2018-12-21 15:56:57 +08:00
@qqqss
对字段的控制,也可以通过上面的方法配置不同角色查询这张表的校验规则,
还可以在 SQLExecutor 查到后,根据角色和权限配置过滤调没权限访问的字段。
https://github.com/TommyLemon/APIJSON/issues/31
TommyLemon
2018-12-21 16:01:44 +08:00
@kevinle #41 楼问了类似的问题,#64 楼有回复。

任何需要后端写代码实现 CRUD 的库,
和 APIJSON 的开发效率都不是一个级别的,
请大家了解清楚,APIJSON 是后端不用写代码的 ORM 库,
不要随便拿别的库来说比 APIJSON “不知道牛逼多少”,谢谢!
pryhub
2018-12-21 18:20:52 +08:00
额,这也能置顶?
royzxq
2018-12-21 18:34:51 +08:00
#65 @TommyLemon 你这自相矛盾啊。 都老代码了,自然没有 APIJSON, 也就不谈 async/await 了。
新写的 async/await 不能用吗,http2 下多一次请求很费时间吗?

还有就是看文档最后是把 JSON 作为 URL 的一部分,看上去挺别扭的。能 POST 而不是丢 URL 里么。
aristotll
2018-12-21 18:48:27 +08:00
@TommyLemon #31 hibernate 不是关闭 issue 人家用的是 jira 管理 issue , 问题不在 github

https://hibernate.atlassian.net/projects/HHH/issues
flame90
2018-12-21 19:04:08 +08:00
@airyland 有道理,国内开发者喜欢在各个地方宣传,引导点赞,论技术影响力,hibernate 的影响力绝对比这个项目大
jimchen9999
2018-12-21 20:50:55 +08:00
把后端要写的 query 搬到前端写 就改变世界了?数据结构变了 前端不得重来? coupling 这么严重看不出来吗?
IvanLi127
2018-12-22 08:21:22 +08:00
迷之比较,项目好像不错,这推广就比较恶心了。

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

https://tanronggui.xyz/t/519237

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

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

© 2021 V2EX