BeetlSQL 3.29.0 发布,流行的 Java DAO 工具
BeetlSQL 研发自 2015 年,核心和扩展全部自研。目标是提供开发高效,维护高效,运行高效的数据访问框架,它适用范围广,定制性强,入门快。
阅读文档 源码和例子 在线体验 多库使用 性能测试 插件支持
本次调整:
- Apache Doris 数据库支持
- sql-dynamic-table 不支持timestamp和bye[] 类型修复
- solon框架集成更新到最新版本
- 更新beetl,修复beetl不支持char类型
SQLManager sqlManager = builder.build(); //doris没有传统数据丰富的metadata的补充 ((SchemaLessMetaDataManager)sqlManager.getMetaDataManager()).addBean(DorisUser.class); DorisMapper dorisMapper = sqlManager.getMapper(DorisMapper.class); sqlManager.all(DorisUser.class); //根据“主键” 查询 sqlManager.unique(DorisUser.class,1); // SQL查询 List<DorisUser> list = sqlManager.execute(new SQLReady("select * from example_tbl_agg1 order by user_id limit 1,2"),DorisUser.class); //翻页 PageResult<DorisUser> pageResult = dorisMapper.select(DefaultPageRequest.of(1,5));
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 | 各种数据库的测试和验证,支持 20+ 数据库。 |
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 | 查询一条 | 259 | 670 | 43 | 61 |
maven
<dependency> <groupId>com.ibeetl</groupId> <artifactId>beetlsql</artifactId> <version>3.29.0-RELEASE</version> </dependency>
BeetlSQL 支持如下数据库
- 传统数据库:MySQL (包括支持 MySQL 协议的各种数据库), MariaDB ,Oralce ,Postgres (包括支持 Postgres 协议的各种数据库), DB2 , SQL Server ,H2 , SQLite , Derby ,神通,达梦,华为高斯,人大金仓,PolarDB,GBase8s,GreatSQL 等
- 大数据:HBase,ClickHouse,Cassandar,Hive,GreenPlum,Doris
- 物联网时序数据库:Machbase,TD-Engine,IotDB
- SQL 查询引擎:Drill,Presto,Druid
- 内存数据库:ignite,CouchBase
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
apijson-router 1.8.0 发布,腾讯 APIJSON 路由插件•可控暴露接口到公网
apijson-router1.6.0-1.7.0 更新内容 升级 APIJSON, apijson-framework, 自身 版本分别至 6.3.0, 6.3.0, 1.8.0; 升级 unitauto-java, unitauto-jar 版本至 3.0.5; 相关更新见https://github.com/Tencent/APIJSON/releases/tag/6.3.0https://github.com/APIJSON/apijson-framework/releases/tag/6.3.0 具体见Release 发布版本。 apijson-router 腾讯APIJSON5.1.0+ 的路由插件,可控地对公网暴露类 RESTful 简单接口,内部转成 APIJSON 格式请求来执行。 适合在公司外的公网可控地暴露 HTTP 接口,以及方便接入 ZooKeeper, Zuul, Apollo, Nacos, SpringSecurity, Shiro, Sentinel, Hystrix 等各种使用 URL 路由的 配置、鉴权、监控、限流、熔断 等网关/框架/组件。 ...
- 下一篇
国产数据库管理工具 CloudDM v2.4.3 发布,改善 Redis、Doris 等数据使用体验
CloudDM是ClouGence公司推出的一款一站式多数据源开发管理工具,使用它可以方便地访问和管理MySQL、Oracle、PostgreSQL、阿里云 RDS、Greenplum、TiDB、Redis、StarRocks、Doris、SelectDB、SQL SERVER、ClickHouse、OceanBase 、PolarDB-X 、IBM Db2 等多种不同类型的数据库。通过 CloudDM 丰富的数据源支持可以避免在多个专业工具之间切换,从而提高工作效率。 它是本地化的应用程序,没有后台进程。和DataGrip、Navicat一样在安装完成后,只需要双击应用程序图标,便可以方便的管理位于本地计算机或远程计算机上的数据库。已经支持Windows、MacOS和Linux主流操作系统。 更新内容 [新增] 新增 8 个 Redis 命令的支持,分别为:PING、QUIT、AUTH、TIME、SAVE、ROLE、FLUSHALL、BGREWRITEAOF [优化] 优化 表结构编辑器,编辑后未提交直接关闭标签页现在会有提醒 [修复] 修复 生成 Insert 语句错误的问题 修...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Red5直播服务器,属于Java语言的直播服务器
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8安装Docker,最新的服务器搭配容器使用