V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  TommyLemon  ›  全部回复第 6 页 / 共 34 页
回复总数  669
1 ... 2  3  4  5  6  7  8  9  10  11 ... 34  
2019-05-30 12:27:18 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@gccdchen 感谢在 文档、引入 等优化的反馈和建议
2019-05-30 12:25:56 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@guoyang “根据查询语句自己去创建对应的索引”
建议使用 APIJSON 的 性能分析 @explain,或者看 APIJSONORM 控制台日志,查看生成的 SQL,
还可以使用小米的 soar 来自动分析,它会给出一些加索引、去除隐式转换 等优化建议
2019-05-30 12:23:30 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@guoyang APIJSON 核心是一个 ORM 库,建表、维护表(索引等)不属于它的范围。
APIJSON 字段限制(可选)、查询缓存、查询预判、索引前置 等做了多方面性能优化
https://github.com/APIJSON/APIJSON/issues/16/

上亿记录的表,就不要指望 ORM 在复杂查询下能帮你自动优化得很好了,
可以做分表分库(可配合用 MyCat,ShardingJDBC 等中间件),或者用 TiDB 等分布式数据库
2019-05-30 12:17:44 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@Ehco1996 默认每次请求都有自带的内存 cache,可重写 putCache,removeCache 方法自定义 Redis 等实现
2019-05-30 12:16:04 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@skadi 圈子就这么点大,见到几次不是很正常?其它人一两周发一次帖推广的你都没印象?我一个月一次就不特殊对待了?
2019-05-30 12:14:13 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@wangxiaoaer
1 )项目文档差
你去找找 5 - 7K Star 的项目对比下,有提供这么全的 Demo,
这么详细的注释、这么严谨详细的文档、多个视频教程、强大易用的在线测试工具
的 Java 项目,发出来看看有几个。


2 )摆不正自己的位置
不管是项目主页,这篇帖子,还是评论里的回复,都不知道说了多少遍了:
APIJSON 是一种为 API 而生的 JSON 网络传输协议。
为 简单的增删改查、复杂的查询、简单的事务操作 提供了完全自动化的 API。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是互联网创业项目和企业自用项目。

应用场景还不够清楚?什么叫摆不正自己的位置?

3 )推广手段
GitHub 马太效应,不推广,会死。
Star,issue,群里提问,第三方的博客 本身就是对 APIJSON 的不同形式的认可。
2019-05-30 11:52:56 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@wangyongbo
Node, Python, PHP, Java, C#, Go 语言的 APIJSON 后端库,
Android, iOS, JavaScript(原生+Vue) 的前端 Demo 都有的
https://github.com/TommyLemon/APIJSON
2019-05-30 11:50:45 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@ianva 是有些类似,很多人没搞清楚总是说“比你的 APIJSON 强”,“完爆 APIJSON ”之类的。
事实上 Facebook 的 GraphQL 是 Gateway,而 APIJSON 是 ORM,有着本质上的区别,
真要放一般的互联网项目开发中拿来对比,那就是 APIJSON “完爆” GraphQL 了。
https://juejin.im/post/5ae80edd51882567277433cf
2019-05-30 11:49:29 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@yixiang @KickAssTonight @peyppicp @tt67wq
APIJSON 提供自动化权限管理、自动化数据和结构校验、自动限流防止过载、自动防 SQL 注入
https://github.com/APIJSON/APIJSON/issues/14

关于字段级访问控制见这个 issue
https://github.com/APIJSON/APIJSON/issues/31
2019-05-30 11:40:49 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@jk1030 传统 RESTful 等方式照样耦合,APIJSON 这方面反而更有优势,见 #10 楼回答
https://www.v2ex.com/t/568631?p=1#r_7398843
2019-05-29 18:46:11 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@polebug
https://www.v2ex.com/i/StOLewJO.jpeg
不需要前端管数据库的哦,那是后端的事情。后端把数据库建好,配置好 APIJSON 的数据库连接给前端调用。
至于如何请求,后端把 URL 和请求 JSON 放到 APIJSONAuto 接口工具上传(提供源码可以部署到内网),
前端就能在共享的测试用例列表里浏览和使用了。

这种方式确实是在跳转传统的 RESTful 等开发方式,很多人不理解、不支持,但我还是一路坚持下来了。

https://i.v2ex.co/T272D2Xd.jpeg
目前已经有多家企业在使用中,其中不乏营收过亿的企业(传音 2018 年 226 亿)和 融资上千万的企业(社保科技)
https://github.com/APIJSON/APIJSON
2019-05-29 18:39:15 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@TommyLemon 评论自动删除缩进(每行前面的空格)也是醉了,可以复制粘贴 请求 JSON 到
APIJSONAuto 自动化接口管理平台来测试
apijson.org
2019-05-29 18:37:45 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@Accat1024 对的,不过虽然支持 HTTP GET,但建议还是用 HTTP POST,
不需要编码 url encode 和转码 url decode,HTTP 传输性能和稳定性都更好。
你可以使用 "@explain":true,来查看每次请求自动生成的 SQL:

POST: http://apijson.cn:8080/get
```js
{
"[]": {
"join": "</User/id@", // Comment LEFT JOIN User ON User.id = Comment.userId
"Comment": {
"@column": "id,userId,content", // SELECT id,userId,content
"@order": "date-" // ORDER BY date DESC
},
"User": {
"@column": "id,name", // SELECT id,name
"id@": "/Comment/userId"
}
},
"@explain": true
}
```
返回 Response:
```js
{
"[]": [
{
"Comment": {
"@explain": {
"sql": "SELECT `Comment`.`id`,`Comment`.`userId`,`Comment`.`content`, `User`.`id`,`User`.`name` FROM `sys`.`Comment` AS `Comment` LEFT JOIN ( SELECT `id`,`name` FROM `sys`.`apijson_user` ) AS `User` ON `User`.`id` = `Comment`.`userId` ORDER BY `Comment`.`date` DESC LIMIT 2 OFFSET 0",
"list": [
{
"id": 1,
"select_type": "SIMPLE",
"table": "Comment",
"type": "ALL",
"rows": 476,
"filtered": 100,
"Extra": "Using filesort"
},
{
"id": 1,
"select_type": "SIMPLE",
"table": "apijson_user",
"type": "eq_ref",
"possible_keys": "PRIMARY",
"key": "PRIMARY",
"key_len": "8",
"ref": "sys.Comment.userId",
"rows": 1,
"filtered": 100
}
]
},
"id": 1559125514580,
"userId": 82001,
"content": "测试新增评论"
},
"User": {
"@explain": {
"sql": "SELECT `id`,`name` FROM `sys`.`apijson_user` WHERE ( (`id` = 82001) ) LIMIT 1 OFFSET 0",
"list": [
{
"id": 1,
"select_type": "SIMPLE",
"table": "apijson_user",
"type": "const",
"possible_keys": "PRIMARY",
"key": "PRIMARY",
"key_len": "8",
"ref": "const",
"rows": 1,
"filtered": 100
}
]
},
"id": 82001,
"name": "测试账号"
}
},
{
"Comment": {
"id": 1559056772210,
"userId": 82001,
"content": "测试新增评论"
},
"User": {
"@explain": {
"sql": "SELECT `id`,`name` FROM `sys`.`apijson_user` WHERE ( (`id` = 82001) ) LIMIT 1 OFFSET 0",
"list": [
{
"id": 1,
"select_type": "SIMPLE",
"table": "apijson_user",
"type": "const",
"possible_keys": "PRIMARY",
"key": "PRIMARY",
"key_len": "8",
"ref": "const",
"rows": 1,
"filtered": 100
}
]
},
"id": 82001,
"name": "测试账号"
}
}
],
"code": 200,
"msg": "success",
"sql:generate/cache/execute/maxExecute": "7/3/4/200",
"depth:count/max": "3/5",
"time:start/duration/end": "1559126202459/3/1559126202462"
}
```
2019-05-29 18:33:01 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@jc89898 文档很重要,花了很多时间去编写和修改的,不过源码也一直在更新哈
https://github.com/APIJSON/APIJSON/releases
2019-05-29 17:57:22 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@Accat1024 APIJSONORM 是一个 ORM 库,发布源码属于运维工作了,有 Jenkins 等很多其它工具可以使用的。

@myyou 多数据库、多模式的文档 在这里,底部的 功能符 /对象关键词 @database 和 @schema
https://github.com/APIJSON/APIJSON/blob/master/Document.md#3.2
2019-05-29 17:53:43 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@Accat1024 适合用 APIJSON 的 增删改查 接口都可以使用 APIJSON 自动化 API,后端不用写代码,前端直接调用。
APIJSON 为 简单的增删改查、复杂的查询、简单的事务操作 提供了完全自动化的 API。
能大幅降低开发和沟通成本,简化开发流程,缩短开发周期。
适合中小型前后端分离的项目,尤其是互联网创业项目和企业自用项目。
对于一般的互联网中小型项目而言,这些 API 能占到 80% 以上,可以用 APIJSON 省去 API 开发工作。
剩下的一些不适合的建议自己加接口,按照传统方式或其它方式去实现。
当然如果对 APIJSON 源码比较熟,可以像这个用户一样重写方法去定制自己的需求。

blog.csdn.net/qq_41829492/article/details/88670940
2019-05-29 17:49:55 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@myyou 可以的,APIJSONORM 支持
多数据库 "@database":"PostgreSQL" //MySQL, PostgreSQL 可以混合使用
多模式 "@schema":"sys" //sys, postgres, apijson, app 等系统 Schema 和自己的 Schema 都可以混合使用
2019-05-29 17:47:32 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@otakustay
其实 1w 多行代码 [可能] 的 bug 只有 16 个,
有几个确认是并非 bug,只是冗余的判断导致扫描器分析错误而已,
也有几个确认确实是 bug,后面改了一些了,
还有一些还没时间去一一验证。
24 个改进建议也确认了部分,改了一些了。

能做到这个程度开源项目其实整体占比很低的,我用过很多热门的项目,
经常使用中或者看源码就发现很多 bug 了,而且其中很多代码行数还原没 APIJSON 高。
有兴趣的话可以对 APIJSON 还有你用的热门开源项目都扫描一遍,给 APIJSON 发个 issue 提交报告。
2019-05-29 17:36:07 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
https://i.v2ex.co/StOLewJO.jpeg
APIJSONAuto 自动化接口管理工具,自动生成文档与注释、自动生成代码、自动化回归测试、自动静态检查等
http://apijson.org/
2019-05-29 17:31:30 +08:00
回复了 TommyLemon 创建的主题 程序员 技术改变世界,前后协同变革 自动化 ORM 可靠度高达 99.85%
@TommyLemon
截屏的 JavaScript 代码不建议使用了, APIJSONAuto 也不用,
APIJSON 核心是后端 Java 的 ORM 库 APIJSONORM 哦,
前端只要发送 HTTP POST 提交 JSON 就行了,Ajax,Axios 等各种库都能用。

https://github.com/APIJSON/APIJSON/tree/master/APIJSON-Java-Server
1 ... 2  3  4  5  6  7  8  9  10  11 ... 34  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   965 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 18:43 · PVG 02:43 · LAX 11:43 · JFK 14:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.