BeetlSQL 3.2.8 发布,超好用的 Java 数据库访问工具

本次发布增加了一个贴心功能,可以限制Mapper方法中的SQL长度,以避免过长SQL导致难以维护

  • 配置属性 MAPPER_SQL_MAX_LENGTH,限制Mapper中的SQL长度,默认不限制
  • 代码自动生成的ID使用@AssingID

无论是JAP,还是SpringData,还是MyBatis,还是BeetSQL,都支持Mapper中使用注解指明SQL语句,以BeetlSQL为例子

@Sql("select * from user where dept_id=?")
List<User> selectByDept(Integer deptId);

@Template("select * from user where dept_id=#{deptId}")
List<User> selectByDept2(Integer deptId);

原则上应该尽量保持sql语句短小,过长的sql语句应该放到文件里维护。BeetlSQL提供了一个运行时刻检测sql语句长度,如果过长,则拒绝执行。

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

BeetlSQL 的目标是提供开发高效,维护高效,运行高效的数据库访问框架,以我20年在电信,金融以及互联网天天CRUD的经验总结得来的框架,适用范围广。目前支持的数据库如下

  • 传统数据库:MySQL,MariaDB,Oralce,Postgres,DB2,SQL Server,H2,SQLite,Derby,神通,达梦,华为高斯,人大金仓,PolarDB 等
  • 大数据:HBase,ClickHouse,Cassandar,Hive
  • 物联网时序数据库:Machbase,TD-Engine,IotDB
  • SQL查询引擎:Drill,Presto,Druid
  • 内存数据库:ignite,CouchBase

事务支持本地和全局,以及Saga事务,也可以配合第三方事务管理器。

阅读文档 源码和例子 性能测试

猜你喜欢

转载自www.oschina.net/news/127860/beetlsql-3-2-8-released