ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# 简介 **最新版本号:** * 5.1.14 发版日期: 2021-10-30 * 4.19.5 发版日期: 2021-10-30 **发行版历史:** [https://gitee.com/sagacity/sagacity-sqltoy/releases](https://gitee.com/sagacity/sagacity-sqltoy/releases) **开源地址:** * github: [https://github.com/sagframe/sagacity-sqltoy](https://github.com/sagframe/sagacity-sqltoy) * gitee: [https://gitee.com/sagacity/sagacity-sqltoy](https://gitee.com/sagacity/sagacity-sqltoy) * IDEA开源插件地址: [https://gitee.com/threefish/sqltoy-idea-plugins](https://gitee.com/threefish/sqltoy-idea-plugins) sqltoy-orm是基于java语言开发的,兼有hibernate面向对象操作和myBatis灵活查询的优点,同时更贴切项目、更贴切开发者的一个关系型数据库ORM框架,支持oracle、mysql、postgresql、sqlserver、db2、sqlite、sybase iq、elasticsearch、mongodb等数据库。 与sqltoy-orm配套的有一个quickvo工具,协助通过数据库表产生POJO对象类。Quickvo工具摈弃了hibernate-tools工具的不足(如模块化配置、主键策略配置、级联加载、修改、删除的逻辑),可以让开发者通过配置文件进行灵活控制POJO的生成,而不用担心自己对POJO类的修改被覆盖。 sqltoy最大的特点在于贴切项目、了解开发者,试图实实在在的帮助开发者简化数据库交互过程中的大量看似很重要其实是机械的重复工作,同时sqltoy将大量第一手项目最佳实践模式抽象成工具带给开发者。 sqltoy究竟能给你带来什么? * 有别于hibernate的增删改(含批量和级联)内部实现,hibernate修改对象个别属性是不是要先load后修改防止其他字段被置为null?高并发大集群下面就会冲掉别人修改的数据。 * 堪称最为优雅的动态sql查询写法,一眼就可以看明白sql的业务含义,后期维护更容易,更容易进行sql优化和调整。 * 提供快速分页查询可能实现先分页后关联,减少关联数据规模。 * 让你极大减少表关联、让sql更简洁清晰并提升性能的缓存翻译功能。 * 让你不需要太牛的sql能力实现行转列、列转行。 * 提供多重分组汇总求平均的功能(算法和sql的结合,以强补弱,简单而优雅) * 让分页查询可以只需1.45次,你的分页是不是2次查询(一次查总记录数、一次查实际记录)? * 支持并行查询特性(4.17.13版本支持并行分页查询) * 提供分库分表sharding功能,为高性能、分布式场景奠定基础。 * 最大程度实现跨数据库能力,提供不同数据库函数动态替换,尤其针对软件产品一个sql就可以适应不同数据库。 * Sql语句支持注释,即客户端调试好即可copy进来。机理是加载sql时剔除注释,但会保留/\*+--hint--\*/形式的数据库自身优化性注释。