1 修复3.19.0 发版中query.between 实现的bug
2 使用最新的beetl版本,模板相关sql性能带来小幅度提升
maven
<dependency>
<groupId>com.ibeetl</groupId>
<artifactId>beetlsql</artifactId>
<version>3.19.3-RELEASE</version>
</dependency>
BeetlSQL 自主研发自 2015 年,目标是提供开发高效,维护高效,运行高效的数据访问框架,它适用范围广,定制性强,写起数据库访问代码特别顺滑,不亚于 MyBatis。你不想写 SQL 也好,或者想更好地写 SQL 也好,BeetlSQL 都能满足这要求,目前支持的数据库如下
- 传统数据库:MySQL (包括支持 MySQL 协议的各种数据库), MariaDB ,Oralce ,Postgres (包括支持 Postgres 协议的各种数据库), DB2 , SQL Server ,H2 , SQLite , Derby ,神通,达梦,华为高斯,人大金仓,PolarDB,GBase8s,GreatSQL 等
- 大数据:HBase,ClickHouse,Cassandar,Hive,GreenPlum
- 物联网时序数据库:Machbase,TD-Engine,IotDB
- SQL 查询引擎:Drill,Presto,Druid
- 内存数据库:ignite,CouchBase
阅读文档 源码和例子 在线体验 多库使用 性能测试
如下测试包含了常用的orm操作: 多表联合查询映射(complexMapping),直接执行sql( executeJdbc),执行模板sql(executeTemplate), 执行文件中的模板sql( File), 内置插入(insert),Query调用链(Query),翻页查询(pageQuery),内置主键查询(selectById), one2Many 自动关联查询
Benchmark ModeCntScore Error Units
JMHMain.beetlsqlComplexMapping thrpt5177.412 ±59.295ops/ms
JMHMain.beetlsqlExecuteJdbcthrpt5365.386 ± 131.116ops/ms
JMHMain.beetlsqlExecuteTemplatethrpt5313.983 ± 109.348ops/ms
JMHMain.beetlsqlFile thrpt5343.331 ± 138.322ops/ms
JMHMain.beetlsqlInsert thrpt5196.150 ±87.106ops/ms
JMHMain.beetlsqlLambdaQuerythrpt5219.579 ±88.081ops/ms
JMHMain.beetlsqlOne2Many thrpt5 93.343 ±37.242ops/ms
JMHMain.beetlsqlPageQuerythrpt5161.726 ±76.978ops/ms
JMHMain.beetlsqlSelectById thrpt5302.450 ±95.770ops/ms
JMHMain.jdbcExecuteJdbcthrpt5782.097 ± 252.305ops/ms
JMHMain.jdbcInsert thrpt5273.364 ± 133.523ops/ms
JMHMain.jdbcSelectById thrpt5806.214 ± 261.218ops/ms
JMHMain.jpaExecuteJdbc thrpt5107.990 ±50.917ops/ms
JMHMain.jpaExecuteTemplate thrpt5122.694 ±46.344ops/ms
JMHMain.jpaInsertthrpt5 71.806 ±37.828ops/ms
JMHMain.jpaOne2Manythrpt5 88.506 ±36.018ops/ms
JMHMain.jpaPageQuery thrpt5110.377 ±35.236ops/ms
JMHMain.jpaSelectByIdthrpt5260.832 ±68.198ops/ms
JMHMain.mybatisComplexMappingthrpt5 86.302 ±48.819ops/ms
JMHMain.mybatisExecuteTemplate thrpt5177.863 ±63.760ops/ms
JMHMain.mybatisFilethrpt5143.007 ±69.036ops/ms
JMHMain.mybatisInsertthrpt5122.391 ±45.541ops/ms
JMHMain.mybatisLambdaQuery thrpt59.109 ± 5.487ops/ms
JMHMain.mybatisPageQuery thrpt5 58.990 ±16.252ops/ms
JMHMain.mybatisSelectByIdthrpt5184.545 ±60.096ops/ms
JMHMain.weedExecuteJdbcthrpt5311.293 ± 161.801ops/ms
JMHMain.weedExecuteTemplatethrpt5328.432 ± 106.103ops/ms
JMHMain.weedFile thrpt5338.572 ± 168.666ops/ms
JMHMain.weedInsert thrpt5183.079 ± 101.693ops/ms
JMHMain.weedLambdaQuerythrpt5293.843 ± 155.029ops/ms
JMHMain.weedPageQuerythrpt5176.761 ±88.406ops/ms
JMHMain.weedSelectById thrpt5295.524 ± 147.727ops/ms