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事務,也可以配合第三方事務管理器。

閱讀文檔 源碼和例子 性能測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章