别再 mybatis 了,融合 JPA 和超强查询的 sqltoy-orm 5.6.14 发版
开源地址:
- github: https://github.com/sagframe/sagacity-sqltoy
- gitee: https://gitee.com/sagacity/sagacity-sqltoy
- idea 插件 (可直接在 idea 中检索安装): https://github.com/imyuyu/sqltoy-idea-plugin
- sqltoy 脚手架项目:https://gitee.com/momoljw/sss-rbac-admin
- sqltoy lambda 项目: https://gitee.com/gzghde/sqltoy-plus
更新内容
1、优化mogdb数据库支持(由sqltoy用户自行扩展,信创场景)
2、在lightdao中增加generateBizId灵活通过redis产生业务主键
- 类似 JPA 的对象化 CRUD、对象级联加载和新增、更新
- 支持通过 POJO 生成 DDL 以及直接向数据库创建表
- 强化 update 操作,提供弹性字段修改能力,不同于 hibernate 先 load 后修改,而是一次数据库交互完成修改,确保了高并发场景下数据的准确性
- 改进了级联修改,提供了先删除或者先置无效,再覆盖的操作选项
- 增加了 updateFetch、updateSaveFetch 功能,强化针对强事务高并发场景的处理,类似库存台账、资金台账,实现一次数据库交互,完成锁查询、不存在则插入、存在则修改,并返回修改后的结果
- 增加了树结构封装,便于统一不同数据库树型结构数据的递归查询
- 支持分库分表、支持多种主键策略 (额外支持基于 redis 的产生特定规则的业务主键)、加密存储、数据版本校验
- 提供了公共属性赋值 (创建人、修改人、创建时间、修改时间、租户)、扩展类型处理等
- 提供了多租户统一过滤和赋值、提供了数据权限参数带入和越权校验
查询部分
- 极为直观的 sql 编写方式,便于从客户端 <--> 代码 双向快速迁移,便于后期变更维护
- 支持缓存翻译、反向缓存匹配 key 代替 like 模糊查询
- 提供了跨数据库支持能力:不同数据库的函数自动转换适配,多方言 sql 根据实际环境自动匹配、多数据库同步测试,大幅提升了产品化能力
- 提供了取 top 记录、随机记录等特殊场景的查询功能
- 提供了最强大的分页查询机制:1) 自动优化 count 语句;2) 提供基于缓存的分页优化,避免每次都执行 count 查询;3) 提供了独具特色的快速分页;4) 提供了并行分页
- 提供了分库分表能力
- 提供了在管理类项目中极为价值的:分组汇总计算、行列转换 (行转列、列转行)、同比环比、树形排序、树形汇总 相关算法自然集成
- 提供了基于查询的层次化数据结构封装
- 提供了大量辅助功能:数据脱敏、格式化、条件参数预处理等
支持多种数据库
- 常规的 mysql、oracle、db2、postgresql、 sqlserver、dm、kingbase、sqlite、h2、 oceanBase、polardb、guassdb、tidb
- 支持分布式 olap 数据库: clickhouse、StarRocks、greenplum、impala (kudu)
- 支持 elasticsearch、mongodb
- 所有基于 sql 和 jdbc 各类数据库查询
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业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
🎉smart-servlet 2.0 发布,适配 Jakarta Servlet 6.0
1、smart-servlet 简介 smart-servlet 是一个基于 Jakarta Servlet 6.0 的轻量级 Servlet 容器,适用于 Java 17+ 环境。 产品特色 国产血统:全球首款全栈核心技术自研的国产 Servlet 容器。 性能优越:搭载最新版通信微内核(smart-socket)和 http 服务模块(smart-http)。 安全可靠:严格遵循协议规范;支持加密传输方式。 极致轻量:发行包仅1.1MB。 简洁易用:支持 War 包、springboot、maven-plugin 等多种运行模式,使用体验100%兼容 Tomcat。 目标用户 有着信创需求的企业用户。 对服务并发能力要求高的企业用户。 想要研究 servlet 技术的个人开发者。 2、 版本更新 在上一个版本中,smart-servlet 将代码的开源比例提升至 96%。仅约 700 行面向企业级客户提供的高级特性保持闭源,但为此还被社区中人稍稍批判了一番。 对于国产开源项目,尝试通过区分开源版和企业版的差异来寻求自我发展之路这件事,不理解为何总会遭受非议。此前都是在社区吃其他项目...
- 下一篇
DjangoAdmin 敏捷开发框架 Django+AntdVue 版本 v2.2.0 发布
v2.2.0 更新内容:1、全部模块添加、修改新增记录操作人 ID;2、解决菜单管理模块提交表单报错的问题;3、菜单保存时新增权限节点的穿梭组件;4、优化栏目模块图片保存的功能;5、升级图标选择组件,简化了自定义标签;6、网站设置模块新增服务类,优化代码结构;7、修复近期用户反馈的 BUG; 项目介绍 一款 Python 语言基于 Django、Vue3、AntDesign、MySQL 等框架精心打造的一款模块化、高性能、企业级的敏捷开发框架,本着简化开发、提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的组件式开发方式:单图上传、多图上传、下拉选择、开关按钮、单选按钮、多选按钮等等一系列个性化、轻量级的组件,是一款真正意义上实现低代码开发的敏捷开发框架。 内置模块 用户管理:用于维护管理系统的用户,常规信息的维护与账号设置。 角色管理:角色菜单管理与权限分配、设置角色所拥有的菜单权限。 菜单管理:配置系统菜单,操作权限,按钮权限标识等。 职级管理:主要管理用户的职级。 岗位管理:主要管理用户担任职务。 部门管理:配置系统组织机构,树结构展现支持数据权限。 字典管理:对...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Hadoop3单机部署,实现最简伪集群
- CentOS8编译安装MySQL8.0.19
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS6,CentOS7官方镜像安装Oracle11G