BeetSql(数据库管理工具)
v3.2.1 官方版- 软件大小:19.7 MB
- 更新日期:2020-12-31 08:51
- 软件语言:简体中文
- 软件类别:数据库类
- 软件授权:免费版
- 软件官网:待审核
- 适用平台:WinXP, Win7, Win8, Win10, WinAll
- 软件厂商:
软件介绍 人气软件 下载地址
BeetSql提供数据库管理功能,可以在软件编辑SQL,可以在软件查询表单内容,可以在软件生成脚本,支持定义变量、属性引用、算数表达式、逻辑表达式、循环语句、条件语句、函数调用、格式化、class方法调用、错误处理、安全输出、注释、类型说明等多种内容,用户可以直接在软件复制代码运行,可以立即分析你的数据库,可以调用数据内容创建可视化的表单,为用户管理数据库提供帮助,软件支持DAO,您可以在软件编辑数据模型,可以将数据映射到模型,可以直接在模板混合数据生成模型,如果你需要DAO工具就可以下载BeetSql!
软件功能
BeetlSQL 超过MyBatis的全功能Java DAO工具
BeetSql是一个全功能DAO工具, 同时具有Hibernate 优点 & Mybatis优点功能,适用于承认以SQL为中心,同时又需求工具能自动能生成大量常用的SQL的应用。
开发效率高
无需注解,自动使用大量内置SQL,轻易完成增删改查功能,节省50%的开发工作量。 数据模型支持Pojo,也支持Map/List这种快速模型,也支持混合模型。 SQL 模板基于Beetl实现,更容易写和调试,以及扩展。 可以针对单个表(或者视图)代码生成pojo类和sql模版,甚至是整个数据库。能减少代码编写工作量。
易于维护
SQL 以更简洁的方式,Markdown方式集中管理,同时方便程序开发和数据库SQL调试。可以自动将sql文件映射为dao接口类。灵活直观的支持支持一对一,一对多,多对多关系映射而不引入复杂的OR Mapping概念和技术。具备Interceptor功能,可以调试,性能诊断SQL,以及扩展其他功能
软件特色
BeetlSql可以通过sql文件的管理和搜索来支持跨数据库开发,先搜索特定数据库,然后再查找常见。另外BeetlSql也提供了一些夸张的数据库解决方案
DbStyle描述了数据库特性,注入插入语句,翻页语句都通过其子类完成,用户无需操心
提供一些最小的函数扩展,代替各个数据库的函数,如时间和时间操作函数date等
MySqlStyle mysql数据库支持
OracleStyleoralce支持
PostgresStyle postgresql数据库支持
其他还有SQLServer,H2,SQLLite,DB2数据库支持
使用说明
缓存
缓存功能同DebugInterceptor构造方式一样,SimpleCacheInterceptor能缓存指定的sql查询结果
如上例,指定所有名称空间为用户查询都将被缓存,如果此名称空间有更新操作,则缓存清除,输出如下
第二条查询的时间为0,这是因为直接使用了缓存缘故。
SimpleCacheInterceptor构造的时候接受一个类列表,所有sqlid的名称空间,称为“ user.queryUser”的名称空间是“ user”,如果beetlsql的查询sqlid此列表里,将参与缓存处理,否则,不参与缓存处理
默认的缓存实现是使用内存映射,也可以使用其他实现方式,例如redies,只需要实现如下接口
拦截器
拦截器功能BeetlSql可以在执行sql前后执行双向的Intercetor,从而有机会执行各种扩展和监控,这比已知的通过数据库连接池做Interceptor更容易。如下Interceptor都是有可能的
监控sql执行缩短时间语句,打印并收集。TimeStatInterceptor类完成
对每一条sql语句执行后输出其sql和参数,也可以根据条件只输出特定的sql集合的sql。方便用户调试。DebugInterceptor完成
汇总sql执行情况(未完成,需要集成第三方sql分析工具)
跟踪执行的sql和响应的参数
DebugInterceptor类是常用类,可以通过sql和参数打印到控制台,如果你想收集log4j等工具,你需要继承DebugInterceptor,实现println方法,使用你的日志框架打印
如下,在执行数据库操作前会执行之前,通过ctx可以获取执行的参数参数,数据库成功执行后,会执行方法之后
对于查询,执行结果是查询返回的结果集条数,对于更新,返回的是成功条数,如果是批量更新,则为InterceptorContext如下,包含了sqlId,实际得sql,和实际得参数,也包括执行结果结果。 ,则是一个枚举。可以参考源码DebugInterceptor
对于批处理更新,使用BatchUpdateInterceptorContext代替InterceptorContext,paras参数为空,增加了batchParas,保留了所有的参数,定义如下
数据库主从
内置支持主从数据库BeetlSql管理数据源,如果只提供一个数据源,则认为读写器均操作此数据源,如果提供多个,则替换第一个为写库,其他为读库。用户在开发代码的时候,不必担心操作的是哪个数据库,因为调用sqlScript的select相关API的时候,总是去读取从库,添加/更新/删除的时候,总是读取主库(如下是主从实现原理,大部分情况下无需关心如何实现)
主从库的逻辑是由ConnectionSource来决定的,如下DefaultConnectionSource的逻辑
forceStatus可以强制SQLManager使用主或从数据库。参考api SQLManager.useMaster(DBRunner f),SQLManager.useSlave(DBRunner f)
对于不同的ConnectionSource完成逻辑不一样,对于spring,jfinal这样的框架,如果sqlManager在事务环境里,总是操作主数据库,如果是并行事务环境则操作从数据库。如果没有事务环境,则根据sql是查询还是更新来决定。
如下是SpringConnectionSource提供的主从逻辑
注意,对于使用者而言,无需担心本节说的内容,仅供要定制主从逻辑的架构师。
分片JDBC支持
分片-JDBC支持开发者可以使用Sharding-JDBC来支持数据库分库分表,Sharding-JDBC对外提供一个封装好的数据源。只要将数据源当成普通数据源配置给BeetlSQL就可以,唯一的问题是因为Sharding-JDBC的数据源提供的MetaData功能较弱,因此构造BeetlSQL的ConnectionSource的时候还需要额外指定一个真正的数据源
connectionSource唯一不同地方是重载了getMetaData,从而从一个真实的DataSource上获取数据库元信息
对于分表应用,例如创建了user001,user002 ..用户对象必须对应用户表,如果未创建用户表,这样会报错,可以通过SQLManager.addVirtualTable(“ user001”,“ user”),告诉BeetlSQL,通过user001来获得“用户”的元数据信息
人气软件
-
PL/SQL Developer(PL/SQL数据库管理软件) 130.1 MB
/简体中文 -
Oracle SQL Developer(oracle数据库开发工具) 382 MB
/简体中文 -
PowerDesigner16.6 32/64位 2939 MB
/简体中文 -
Navicat for MySQL 15中文 72.1 MB
/简体中文 -
Navicat Data Modeler 3中文 101 MB
/简体中文 -
SPSS 22.0中文 774 MB
/多国语言 -
db文件查看器(SQLiteSpy) 1.67 MB
/英文 -
Navicat Premium V9.0.10 简体中文绿色版 13.00 MB
/简体中文 -
Navicat 15 for MongoDB中文 78.1 MB
/简体中文 -
sql prompt 9 12.67 MB
/简体中文