DBASS
是一个使用泛型技术的一系列
JDBC
工具类库。它参考了
Commons DBUtils
的实现。加入了一个通用的
DAO
,提供了不错的
JDBC
操作
API
(类似于
Spring
的
JDBCTemplate
),包括通用的多数据库支持的分页查询方案等等。也提供了一个非常简单易用的基于注解的事务管理方案。至于为什么要重新发明这个轮子。这是因为
Commons DBUtils
过于简单,
Spring
的
JDBCTemplate需要
依赖于庞大的
Spring
。由于
Cwin
需要以插件形式运行使得它并不适合要求。现在的
DBASS
版本体形控制得不错,只有
20
多
Kb
。此版本支持mssql,mysql,oracle,postgresql。
现在刚刚发布1.0版,请各位大大给些评论,提些建议。多谢了。
集成
DBASS
DBASS
的集成很简单,只需要提供一个数据库类型和一个数据源。
您可以提供一个名叫
dbass.properties
的配置文件(这个文件可以在下载的包中找到)来提供数据源。如果你感觉:啊?又多一个配置文件!我们系统已经在其它地方配置过数据源了!那么,您可以使用一行代码来完成初始化。选择全在您的手上。
通过调用
cn.antia.db.DbUtils
的静态方法
. public static void init(String dbType,DataSource dataSource)
可以完成初始化。dbType可以为相个可选值中的一个:mssql,mysql,oracle,postgre。
在完成初始化以后,就可以在应用程序中调用下面介绍的
API
了。
依赖组件:
如果您需要使用基于注解的事务支持,将依赖于
AspectJ1.5+
。当然我们建议您使用基于注解的事务。因为它使用起来的确很方便。
否则,
DBASS
不依赖于任何第三方组件。
CommonDAO
的介绍
cn.antia.db. CommonDAO
类提供了较为全面的数据库操作方法。提供了一个数据库透明的分页查询解决方案。以下是
CommonDAO
的常用方法列表:
int gtRecordCount(SqlParams sqlParams)
int getRecordCount(String sql)
<T> List<T> queryFirstField(SqlParams sqlParams)
<T> List<T> queryFirstField(String sql)
Map<String,Object> queryFirstMap(SqlParams sqlParams)
Map<String,Object> queryFirstMap(String sql)
<T> T queryFirstObject(SqlParams sqlParams)
<T> T queryFirstObject(String sql)
<T> List<T> queryList(SqlParams sqlParams, Class<T> clazz)
<T> List<T> queryList(SqlParams sqlParams, int page, int pageSize, String orderField, boolean isAsc, Class<T> clazz)
<T> List<T> queryList(String sql, Class<T> clazz)
<T> List<T> queryList(String sql, int page, int pageSize, String orderField, boolean isAsc, Class<T> clazz)
List<Map<String,Object>> queryListMap(SqlParams sqlParams)
List<Map<String,Object>> queryListMap(SqlParams sqlParams, int page, int pageSize, String orderField, boolean isAsc)
List<Map<String,Object>> queryListMap(String sql)
List<Map<String,Object>> queryListMap(String sql, int page, int pageSize, String orderField, boolean isAsc)
<K,T> Map<K,T> queryMap(SqlParams sqlParams) //MAP:以第一列为KEY,第二列为VALUE
<K,T> Map<K,T> queryMap(String sql)
<T> T queryObject(SqlParams sqlParams, Class<T> clazz)
<T> T queryObject(String sql, Class<T> clazz)
int update(SqlParams sqlParams)
int update(String sql)
boolean runSql(String sql)
其中
SqlParams
对象封装了带问号(占位符)的
SQL
语句与参数数组。
DbUtils
的使用
DBASS
提供的
DbUtils
最开始的版本是与
Apache Commons DbUtil
的
DbUtils
类是一致的。提供了一些打开与关闭连接之类的方法。另外增加了一些方法,不过这些方法对于用户来说是无关紧要的。
事务的使用与
TransactionUtils
DBASS
提供了基于注释的事务支持。支持事务嵌套。
事务的配置很简单:如果您的某个方法需要事务支持。只需在方法前面加入一个注释即可。
事务注释:
cn.antia.dn. AssTranscation
例如:
@AssTranscation
public int deleteUser(…){…}
是不是很简单呢。
如果您想手动控制事务的话。
TransactionUtils
为事务的支持提供了一组静态方法。一般使用事务只需关注三个方法即可:
begin ();
开始一个事务。如果在调用此方法之前当前线程正在事务当中,那么将不再打开新的事务。而只是将后面的操作加入到已经存在的事务中。
commit();
提交事务。
rollback();
回滚事务。
rollback(Throwable e);
回滚事务,参数为引发回滚的异常
TransactionUtils
的其它方法包括:
isInTransaction():
当前线程是否在事务中
isConnInTransaction():
此数据库连接是否在事务中
currentConnection():
取得当前线程的数据库连接
TransactionUtils
使用示例:
void test(){
TransactionUtils.begin();
try{
String sql = "update address set borough = '000000000' where id = 2";
CommonDAO.update(sql);
sql = "update address set borough = '000000000' where id = 3";
CommonDAO.update(sql);
}catch(Exception e){
TransactionUtils.rollback(e);
return;
}
TransactionUtils.commit();
}
注意:
TransactionUtils
的事务支持需要与
CommonDAO
或者
DbUtils
配合使用。这里的
CommonDAO
或者
DbUtils
中
“
或者
”
的意思是指:要么您使用
CommonDAO
来完成操作。要么您使用
DbUtils
来获取与关闭
DB Connection
。因为
TransactionUtils
无法管理从其它地方取到的
DB Connection
。
注意:如果事务回滚,
TransactionUtils
将会在事务回滚之后抛出一个运行时异常。以告知业务方法的调用者。
在此下载DBASS1.0
分享到:
相关推荐
chapter1:第1章的源程序可使用Jdk1.3以上的任何版本编译和运行,命令运行商品库存管理系统 的命令格式为:java chapter1. MainFrame。 <br> chapter2:第2章的主类是Simulator,运行环境同第1章,也可以在...
现在,ManagedBass是按每个AddOn拆分的一组软件包提供的。 入门 安装NuGet软件包 Install-Package ManagedBass 从下载BASS库,并将它们放在Build Output Directory中。 有关更多信息,请参见 。 变更日志 v3.0 ...
三层架构是一种常见的软件设计模式,它将应用程序分为三个主要的层次:表示层(UI层)、业务逻辑层(BLL层)和数据访问层(DAL层)。这种分层设计有助于提高系统的可维护性和扩展性。 1. **表示层(UI层)**: - ...
# 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
内容概要:本文详细介绍了LabVIEW中最小二乘法的应用及其在曲线拟合和报表生成中的具体实现。LabVIEW作为一种流程图编程语言和开发环境,能够通过图形化编程的方式,使用户轻松构建拟合模型并计算最佳拟合曲线的参数。此外,LabVIEW还提供了丰富的波形处理和分析工具,支持对波形数据进行预处理(如滤波、降噪和采样),并通过最小二乘法进行波形拟合,最终生成详细的报表。最小二乘法通过最小化数据点与拟合曲线之间的误差平方和,广泛应用于统计学、工程学和物理学等领域。 适合人群:从事科学研究、工程设计和数据分析的专业人士,尤其是那些希望通过图形化编程提高工作效率的人群。 使用场景及目标:适用于需要对大量数据进行拟合分析并生成报告的场合,如实验数据分析、工程设计验证等。目标是通过LabVIEW提供的强大工具,快速准确地找到最佳拟合曲线,提升数据分析效率。 其他说明:LabVIEW不仅简化了编程过程,还提高了数据分析的直观性和准确性,使得即使是非专业程序员也能轻松上手。
C语言编程入门教程精简版专题培训课件.ppt
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
DNA进化算法及其改进研究样本.doc
智慧城市-【精品】2019年百度地图城市大数据平台解决方案.zip
# 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
# 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
scratch少儿编程逻辑思维游戏源码-虚拟城市(2D经营策略游戏).zip
# 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
scratch少儿编程逻辑思维游戏源码-突击尖峰.zip
scratch少儿编程逻辑思维游戏源码-涂鸦跳跃.zip
# 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;
# 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;