一、步驟【只針對boys表,若要通用的:則需要使用泛型】
二、舉例解析
1)查詢一條記錄
boys boys=queryrunner.
query
(connection,
"select * from boys where id=?"
,new
beanhandler
(boys.
class),
2);//beanhandler,為boys建立乙個物件,並賦值返回
2)
list
list=queryrunner.
query
(connection,
"select * from boys where id>=?"
,new
beanlisthandler
(boys.
class),
2);
完整**如下:
/**
* 測試dbutils 出現 can't create boys 解決方案,在boys中加入無參構造器
* @author dell
* 通用的增刪改查等等
* * queryrunner類:
* update(connection,sql,params)執行任何增刪改語句
* query(connection,sql,resultsethandler,params):執行任何查詢語句
* resulthandler介面
* beanhandler:將結果集的第一行,封裝成物件,並返回 new beanhandler<>(xx.class)
* beanlisthandler:將結果集中的所有行,封裝成物件的集合,並返回 new beanlisthandler<>(xx.class)
* scalarhandler:將結果集中的第一行第一列,一object的形式返回 new scalarhandler()
* *
* */
public
class
testdbutils
/** * 查詢一行記錄
* @throws exception
*/public
static
void
testquerysingle()
throws exception
/** * 查詢多行記錄
* @throws exception
*/public
static
void
testquerymulti()
throws exception
jdbcutilsbydruid.
getclose
(null, null, connection);}
/** * 查詢單個記錄
* @throws exception
*/public
static
void
testqueryscalar()
throws exception
public
static
void
main
(string[
] args)
throws exception
}
上面例項中使用的類,**如下:
封裝德魯伊連線池,建立連線,關閉
public
class
jdbcutilsbydruid
catch
(exception e)
}public
static connection getconnection()
throws sqlexception
public
static
void
getclose
(resultset resultset,statement prestatement,connection connection)
if(null!=prestatement)
if(null!=connection)
}catch
(exception e)
}}
jdbc優化 DButils的使用
commons dbutils 是 apache 組織提供的乙個開源 jdbc工具類庫,它是對jdbc的簡單封裝,學習成本極低,並且使用dbutils能極大簡化jdbc編碼的工作量。開始用之前,檔案 commons dbutils 1.6.jar。queryrunner類 queryrunner類是...
JDBC事務操作和DBUtils事務
jdbc事務操作 預設是自動事務 執行sql語句 executeupdate 每次執行executeupdate 方法 代表事務自動提交 通過jdbc的api手動事務 開啟事務 conn.setautocomnmit false 提交事務 conn.commit 回滾事務 conn.rollback...
python資料庫連線工具DBUtils
dbutils是乙個允許在多執行緒python應用和資料庫之間安全及高效連線的python模組套件。dbutils套件包含兩個模組子集,乙個適用於相容db api 2介面的模組,乙個適用於pygresql的模組。dbutils.pooleddb是池化資料庫連線中非常基礎的一種實現。相較於pooled...