Skip to content

【性能】新增存储过程 @key():"fun(...)";新增对象关键词 @explain 和 @cache;多方面提升性能;完善和解决 bug 等

Compare
Choose a tag to compare
@TommyLemon TommyLemon released this 04 May 16:22
· 1649 commits to master since this release

Server:
新增存储过程 @key():"fun(...)",与远程函数相比用法除了多了 @ 其它都一致;
新增对象关键词 @Explain 和 @cache 来帮助分析执行性能;
新增全局默认的 @Explain 和 @cache;
新增调试模式下输出时间;

解决 id{} 和 id 同时存在有时候 contains 因为类型不一致导致判断错误而 throw NotExistException;
解决 newSQLConfig 抛 NotExistException 没被 catch 到导致最终返回错误结果;
解决全局的 @database@Schema 对 JOIN 的副表在解析生成 JOIN 副表语句时未生效,导致 SQL 内主表和副表引号不一致而报错;
避免全局默认的 @Schema 自动填充进来导致 Table,Column,PgClass,PgAttribute 的 schema 错误,查不到文档;
解决对表对象数量限制失效;
纠正并完善 sql count 的计算和显示;

MySQL preparedStatement 严格按照类型调用方法,避免隐式转换提高性能;
加强对远程函数 "key()":"fun(arg0,arg1...)" 的格式校验;
优化访问限制的计算及报错;
优化 AbstractSQLExecutor 的缓存;
优化 SQLExecutor 缓存的数据结构,提高性能;
优化存储过程的性能;
提高非调试模式下的日志性能;
调整解析 key:{} 和 key[]:{} 抛异常顺序,优化报错和性能;
SQLConfig 删除多余的 cacheStatic;

打包 apijson-orm-3.5.7.jar;

MySQL:
更新表;

Android:
APIJSONApp 引入 Kotlin,并新增测试自动生成代码的 TestRequestAndResponse 的 Java 和 Kotlin 的工具类;

其它:
完善文档;