Skip to content

Releases: APIJSON/APIJSON

【性能】新增支持CROSS JOIN;新增getMaxQueryCount和getMaxUpdateCount;解决bug及其它优化

Choose a tag to compare

@TommyLemon TommyLemon released this 05 Oct 09:26

Server:
自动化JOIN新增支持CROSS JOIN;
Parser新增getMaxQueryCount和getMaxUpdateCount,可重写来定制最大查询与增删改数量;

解决自动化LEFT,RIGHT JOIN不能用query:1,2查total;
解决多个JOIN的WHERE条件拼接错误;
DemoParser内parseCorrectRequest(JSONObject)抽象到AbstractParser;

打包 apijson-server2.9.3.jar;

Oracle版Demo:
解决以jar包形式运行时找不到“application.yml”文件的问题;

MySQL:
更新sql文件;

其它:
更新文档;
更新issue模板;

新增 format: Boolean,后端将 key[] 转为 keyList 返回

Choose a tag to compare

@TommyLemon TommyLemon released this 09 Sep 16:14

Server:
新增 format: Boolean,可将[]等有特殊字符的key转为list等常规的key,方便前端解析;
新增支持登录时传全局默认 格式化[]等特殊字符的配置 format:Boolean;

新增支持 Oracle 数据库

Choose a tag to compare

@TommyLemon TommyLemon released this 01 Sep 14:11
e8322e8

Server:
新增可连接 Oracle 数据库的 APIJSONDemo_oracle 工程;
APIJSONDemo_oracle 额外支持 String 类型的 id;
APIJSONDemo_oracle 额外支持 在 application.yml 里配置数据库;

新增 Oracle 的测试表,目录名为 Oracle;

新增支持 PostgreSQL 数据库

Choose a tag to compare

@TommyLemon TommyLemon released this 26 Aug 11:28
6f85341

Server:
新增支持PostgreSQL数据库;
新增@database指定数据库类型,支持跨MySQL,PostgreSQL等多种数据库查询,可设置全局默认值;

新增PostgreSQL的测试表,目录名为PostgreSQL;
table目录重命名为MySQL;

更新相关文档;

预编译模式下@having和@column支持SQL函数

Choose a tag to compare

@TommyLemon TommyLemon released this 20 Aug 14:36

Server:
预编译模式下支持@having:"function0(arg0,arg1,...)?value0;function1(arg0,arg1,...)?value1...";
预编译模式下@column支持SQL函数,例如 column0,column1:alias;function0(arg0,arg1,...);function1(...):alias...

解决某些情况下JOIN中SQL语句的外层column不包括子表的;

新增join,支持LEFT,RIGHT,INNER,FULL,OUTTER

Choose a tag to compare

@TommyLemon TommyLemon released this 29 Jul 16:11

新增join,支持LEFT,RIGHT,INNER,FULL,OUTTER:
"<" - LEFT
">" - RIGHT
"&" - INNER
"|" - FULL
"!" - OUTTER
仅适用于GET请求。
示例:
"[]": { "join": "&/User/id@,</Comment/momentId@" }

远程函数支持校验session及新增函数

Choose a tag to compare

@TommyLemon TommyLemon released this 12 Jul 17:48

Server:
远程函数支持校验session;
远程函数新增verifyIdList和verifyURLList;
远程函数新增deleteChildComment来彻底删除评论的子评论及子评论的子评论;

更新table;

远程函数key():function(...)新增优先级key-() > key() > key+();解决bug和其它优化;

Choose a tag to compare

@TommyLemon TommyLemon released this 18 Jun 12:19

Server:
远程函数key():function(...)新增优先级key-() > key() > key+();
AbstractSQLExecutor新增onPutColumn和onPutTable,在DemoSQLExecutor重写可实现控制不返回某张表的某个字段等功能;

解决DemoFunction.isContain在array的值里面的元素类型和value的值的类型不同时return false,导致isContain((JSONArray) [82001,...], (Long) 82001) == false及类似问题;

优化Function执行后的报错;

打包apijson-server2.6.0.jar;

[安全]解决 @ combine:"userId,..." 或 @ combine:"userId{},..." 绕过权限校验

Choose a tag to compare

@TommyLemon TommyLemon released this 14 Jun 15:36

Server:
解决 @ combine:"userId,..." 或 @ combine:"userId{},..." 绕过权限校验;
GETS和HEADS请求也不允许传 @ combine ,避免可能绕过Request表里的规则校验;

优化 @ combine 报错信息;

新增 @combine条件组合 和TYPE校验值类型;优化远程函数、性能和文档;

Choose a tag to compare

@TommyLemon TommyLemon released this 12 Jun 14:48

Server:
新增 @ combine:"key0,&key1,|key2,!key3,..." 支持与或非条件组合;
新增 TYPE:{ key:type } 校验值类型,JSON类型应用场景太窄已注释;
完善远程函数中取值类型错误的异常处理;

解决put/balance接口在未登录时返回错误不是未登录;

优化远程函数,传入request作为第一个参数可最大化灵活实现不同类型的取值,且不用再传参数类型;
优化AbstractParser.onArrayParse缓存取值后数组的性能;
AbstractSQLConfig.putWhere优化性能和条件顺序;

删除 @ condition,用 @ combine 替代;
删除 @ about,查看表和字段属性文档可用APIJSONAuto接口管理工具(查Table和Column),图形化界面更方便;
打包apijson-server2.5.5;

其它:
更新table;
更新通用文档;