BeetlSQL 3.34 发布,批量操作优化

软件服务 创建于:05-30 15:01

BeetlSQL 研发自 2015 年,核心和生态扩展全部自研。目标是提供开发高效,维护高效,运行高效的数据访问框架,它适用范围广,定制性强,入门快。

阅读文档 源码和例子 在线体验 多库使用 性能测试 插件支持

  •   BaseMapper 增加对Batch做的分批处理接口,新增insertBatch,updateBatch等分批处理结果口,并更新了相应的InsertBatchAMI,UpdateByIdBatchAMI 等接口实现
	/**
	 * 批量插入实体。
	 * 未指定batchSize情况下,默认是DbStyle.getMaxBatchCount
	 * @param list 实体集合
	 */
	@AutoMapper(InsertBatchAMI.class)
	void insertBatch(List<T> list);

	/**
	 * 分批插入数据
	 * @param list
	 * @param batchSize
	 */
	@AutoMapper(InsertBatchAMI.class)
	void insertBatch(List<T> list,int batchSize);
  • 修复批量更新接口,在Oracle数据库情况下可能导致游标超过设定的BUG

maven

<dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetlsql</artifactId>
    <version>3.34-RELEASE</version>
</dependency>

BeetlSQL 核心功能

BeetlSQL 核心 功能
sql-core 核心包,封装了 JDBC 操作,SQL 文件管理,注解的注解管理
sql-fetch 类似 Hibernate 那样提供 @Fetch,@FetchMany 等注解
sql-mapper mapper 类定义和扩展,用户可以自定义自己的 mapper 和 mapper 的注解
sql-intergration 整合 Spring,solon,jfinal 等框架,以及例子
sql-query Query 和 LambdaQuery,用 Java API 构造和使用 SQL
sql-mapping 支持单表,多表与 POJO 的互相映射,支持 json 定义,xml 定义映射方式,或者约定习俗
sql-template Beetl 模板实现,且支持其他模板语言
sql-gen 代码生成抽象包,并提供默认实现可以生成 dao,sql 文件,md 文档
sql-db-support 各种数据库的测试和验证,支持 33+ 数据库。
sql-samples 包含了上百个使用 beetlsql 的例子
sql-test 包含了上百个单元测试例子

BeetlSQL 最新扩展包

BeetlSQL 扩展包 功能
sql-xml 高仿 myabtis 的 xml 语法,如果喜欢使用 xml 写 sql 模板的,可以使用此扩展包
sql-accelerator 性能加速包,通过反射优化,缓存,让 beetlsql 性能提升 50%-200%,接近一半手写 JDBC 的性能
sql-firewall sql 防火墙,避免不小心写的 sql 破坏数据库
sql-dynamic-table 支持像访问静态表格那样防火动态表格,简化动态创建表格的业务需求开发
sql-bean-encrypt 支持 @MD5 ,@AES 等对字段加密解密
sql-rewrite 采用 sql 重写,支持单表多租户模式,逻辑删除,数据权限功能
SAGA(实验) BeetSQL 的 SAGA 是实现,用 SAGA 微服务事务

使用加速扩展性能优化结果:能达到近一半手写 JDBC 的性能

查询 测试内容 BeetlSQL(ops/ms) 纯 jdbc mybatis JPA
beetlsqlExecuteJdbc 直接执行 JDBC 318 678 / 64
beetlsqlExecuteTemplate 执行 SQL 模板 268 / 44 66
beetlsqlFile SQL 存放在文件统一管理 266 / 41 /
beetlsqlInsert 插入一条 129 248 43 59
beetlsqlGetAll 获取所有数据 13 40 4 5
beetlsqlLambdaQuery Java 函数编写 SQL 执行查询 196 / 9 /
beetlsqlPageQuery 翻页查询 159 / 17 59
beetlsqlSelectById 查询

原文地址:https://www.oschina.net/news/352738/beetlsql-3-34-released#comments

免责声明:本文来源于互联网,版权归合法拥有者所有,如有侵权请公众号联系管理员

* 本站提供的一些文章、资料是供学习研究之用,如用于商业用途,请购买正版。

闲大赋-李家智