sqltoy-orm 5.2.63 发版,是时候跟 mybatis 告别了!
- 为什么选择mybatis?自由的sql?假设其他一切对等,sqltoy的sql写法是否可以否定掉mybatis的写法?
开源地址:
- github: https://github.com/sagframe/sagacity-sqltoy
- gitee: https://gitee.com/sagacity/sagacity-sqltoy
- idea 插件 (可直接在 idea 中检索安装): https://github.com/threefish/sqltoy-idea-plugins
- sqltoy 脚手架项目:https://gitee.com/momoljw/sss-rbac-admin
- sqltoy lambda 项目: https://gitee.com/gzghde/sqltoy-plus
更新内容
1、支持itemList[0].fieldName或itemList[0].item.name 形式传参
2、在@include(sqlId)基础上扩展支持@include(:scriptParam)动态sql,便于动态传递sql片段
String sql="select * from sqltoy_fruit_order where status=:status @include(:sqlScript)"; result = lightDao.find(sql,MapKit.keys("status", "saleCount", "sqlScript").values(1, 12, "and sale_count>:saleCount"));
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",同时查询总记录数和单页数据,大幅提升性能
- 便利的跨数据库统计计算:数据旋转
- 便利的跨数据库统计计算:无限极分组统计 (含汇总求平均)
- 便利的跨数据库统计计算:同比环比
6、扩展集成

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
ShopXO 免费开源商城系统 v3.0 版本震撼发布
更新日志 1.【新增】新增微信小程序可以提示完善头像及昵称 2.【新增】用户资料修改支持指定字段 3.【新增】删除商品可以选择仅商品或加图片 4.【新增】用户添加增加前钩子 5.【新增】插件管理新增分类 6.【新增】多语言支持绑定顶级域名、默认语言翻译内容添加 7.【新增】支持独立域名绑定对应语言自动识别 8.【新增】前后端页面body新增唯一标识 9.【新增】动态数据列表新增二维码生成并展示支持 10.【新增】动态数据列表进度条支持 11.【新增】动态数据列表星星评分支持 12.【新增】插件支持快速加入左侧菜单 13.【新增】易票联支付宝和微信支付 14.【新增】OceanPayment信用卡支付 15.【新增】后台操作记录日志 16.【新增】默认主题样式配置插件 17.【新增】商品分类商品模式支持一级分类商品展示 18.【新增】插件入口快速增加 19.【优化】PC用户端整体UI及体验优化 20.【优化】订单提交商品数量限制修复 21.【优化】汇率跟随系统语言自动识别 22.【优化】支付方式支持默认汇率 23.【优化】图片预览组建优化 24.【优化】图片验证码默认传参无效修复 25....
- 下一篇
outline.js 3.21.0 已经发布,自动生成文章导读导航
outline.js 3.21.0 已经发布,自动生成文章导读导航 此版本更新内容包括: Features 添加 $emit()、$on()、$off() 方法; 添加 created、mounted、enterReading、exitReading、beforeDestroy 和 destroyed 事件; (88b087d) 详情查看:https://gitee.com/yaohaixiao/outline.js/releases/3.21.0
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址