真正智慧的 ORM,sagacity-sqltoy-5.2.28 发版
开源地址:
- github: https://github.com/sagframe/sagacity-sqltoy
- gitee: https://gitee.com/sagacity/sagacity-sqltoy
- idea 插件 (可直接在 idea 中检索安装): https://github.com/threefish/sqltoy-idea-plugins
更新内容
1、修复@value(:name) 存在$\符号,导致正则表达式替换bug
2、增强cacheMatchKeys支持数组,将多个名称通过like匹配找到精准的key
String[] cacheMatchKeys(CacheMatchFilter cacheMatchFilter, String... matchRegexes)
3、sql中cache-args通过名称匹配精准key支持数组,同时调整filter逻辑,filter条件成立表示包含此数据
<!-- 通过缓存将名称用类似like模式匹配出对应的编码作为条件进行精准查询 --> <cache-arg param="" cache-name="" cache-type="" alias-name="" prior-match-equal=""> <!-- 对缓存进行过滤,比如个人授权的机构、状态为生效的缓存数据等 --> <!-- compare-param: 可以是一个参数的属性名称也可以是具体的值,cache-index对应缓存数据的第几列 --> <filter compare-param="1" cache-index="4"/> </cache-arg>
sqltoy 的关键优势:
//------------------了解 sqltoy的关键优势: -------------------------------------------------------------------------------------------*/ //1、最简最直观的sql编写方式(不仅仅是查询语句),采用条件参数前置处理规整法,让sql语句部分跟客户端保持高度一致 //2、sql中支持注释(规避了对hint特性的影响,知道hint吗?搜oracle hint),和动态更新加载,便于开发和后期维护整个过程的管理 //3、支持缓存翻译和反向缓存条件检索(通过缓存将名称匹配成精确的key),实现sql简化和性能大幅提升 //4、支持快速分页和分页优化功能,实现分页最高级别的优化,同时还考虑到了cte多个with as情况下的优化支持 //5、支持并行查询 //6、根本杜绝sql注入问题 //7、支持行列转换、分组汇总求平均、同比环比计算,在于用算法解决复杂sql,同时也解决了sql跨数据库问题 //8、支持保留字自动适配 //9、支持跨数据库函数自适配,从而非常有利于一套代码适应多种数据库便于产品化,比如oracle的nvl,当sql在mysql环境执行时自动替换为ifnull //10、支持分库分表 //11、提供了取top、取random记录、树形表结构构造和递归查询支持、updateFetch单次交互完成修改和查询等实用的功能 //12、sqltoy的update、save、saveAll、load 等crud操作规避了jpa的缺陷,参见update(entity,String...forceUpdateProps)和updateFetch //13、提供了极为人性化的条件处理:排它性条件、日期条件加减和提取月末月初处理等 //14、提供了查询结果日期、数字格式化、安全脱敏处理,让复杂的事情变得简单,大幅简化sql或结果的二次处理工作 //-----------------------------------------------------------------------------------*/
sqltoy 特点介绍:
- sqltoy 的核心构建思想
- sqltoy 的对比 mybatis (plus) 的核心点:查询语句编写、可阅读性、可维护性
- 对象化 crud 是基础,但 sqltoy 有针对性的改进:update、updateSaveFetch、updateFetch 等
- sqltoy 的缓存翻译,大幅减少表关联简化 sql,让你的查询性能成几何级提升
- 极致的分页,同样帮助你实现查询的性能大幅提升
- 快速分页:@fast () 实现先取单页数据然后再关联查询,极大提升速度
- 分页优化器:page-optimize 让分页查询由两次变成 1.3~1.5 次 (用缓存实现相同查询条件的总记录数量在一定周期内无需重复查询
- sqltoy 的分页取总记录的过程不是简单的 select count (1) from (原始 sql);而是智能判断是否变成:select count (1) from 'from 后语句 ', 并自动剔除最外层的 order by
- sqltoy 支持并行查询:parallel="true",同时查询总记录数和单页数据,大幅提升性能
- 便利的跨数据库统计计算:数据旋转
- 便利的跨数据库统计计算:无限极分组统计 (含汇总求平均)
- 便利的跨数据库统计计算:同比环比

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
LiteFlow v2.9.6 发布!初心不改
v2.9.6介绍 LiteFlow继续发力,推出了v2.9.6版本。 该版本主要改进了组件底层的实例参数结构,并且对循环组件增加了循环下标的特性。 并且还修复了一些BUG。 LiteFlow是一个开源编排式规则引擎,能够让你的系统逻辑任意编排,可选用脚本书写逻辑,支持多达5种脚本语言,支持丰富的第三方存储的支持,所有的逻辑和规则均可热变更。设计系统和重构系统的神器。 利用LiteFlow,你完全可以使用脚本语言写出一个java项目。 LiteFlow是国内优秀的社区型开源项目,如果你是第一次知道这个项目,可以去官网或相关的主页进行了解: 项目官网: https://liteflow.yomahub.com gitee托管仓库: https://gitee.com/dromara/liteFlow github托管仓库: https://github.com/dromara/liteflow 优化组件底层的实例参数结构 这一层优化对于用户是无感知的。但是对于LiteFlow本身的意义是重大的。 随着LiteFlow这个开源项目提供的功能和特性越来越多,我作为作者,也需要考虑今后迭代的成本...
- 下一篇
全平台数据 (数据库) 管理工具 DataCap 1.3.0 发布
当前版本涉及几个主要更新。 DataCap 发布 发布版本 推出日期 1.3.0 2022-12-16 General¶ 支持更改用户名 支持自定义sql模板 支持插件功能 添加重启脚本 Web¶ 优化数据源列表的呈现 添加数据源描述和提示 支持查询历史id顺序 支持报价查询历史 Plugin¶ 支持 oceanbase for jdbc 原生支持redis 支持 jdbc 的 neo4j 支持 jdbc 的 iotdb Redis¶ 支持原生授权 贡献者¶ 非常感谢以下贡献者为此版本的源代码做出的贡献 排名不分先后 GitHub 编号 @qianmoQ 下载地址 https://datacap.incubator.edurt.io/download.html
相关文章
文章评论
共有0条评论来说两句吧...