色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

JAVA使用DBUtils操作數據庫

瀏覽:23日期:2022-08-29 18:24:51

摘要:本文主要學習了如何使用DBUtils在Java代碼中更方便的操作數據庫。

概述

DBUtils是Java編程中的數據庫操作實用工具,小巧簡單實用。

DBUtils封裝了對JDBC的操作,簡化了JDBC操作,可以少寫代碼。

使用

準備

如果需要使用DBUtils工具類,需要導包:

commons-dbutils-1.7.jar

DBUtils封裝了在建立連接后對數據庫的操作,主要有三個核心功能:

1)QueryRunner類提供對SQL語句操作的API。

2)ResultSetHandler接口用于定義查詢操作后,如何封裝結果集。

3)DBUtils工具類定義了關閉資源與事務處理的方法。

常用方法

構造方法

提供了帶數據源和不帶數據源的兩種構造方法。

public QueryRunner();// 不提供數據源,需要手動維護Connection。 public QueryRunner(DataSource ds);// 提供數據源,DbUtils底層自動維護連接Connection。

查詢操作

支持執行查詢操作。

public <T> T query(Connection conn, String sql, ResultSetHandler<T> rsh); public <T> T query(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params); public <T> T query(String sql, ResultSetHandler<T> rsh); public <T> T query(String sql, ResultSetHandler<T> rsh, Object... params);

更新操作

支持執行增加、修改、刪除操作。

public int update(Connection conn, String sql); public int update(Connection conn, String sql, Object param); public int update(Connection conn, String sql, Object... params); public int update(String sql); public int update(String sql, Object param); public int update(String sql, Object... params);

增加操作

支持執行增加操作,可以返回增加的數據。

public <T> T insert(Connection conn, String sql, ResultSetHandler<T> rsh); public <T> T insert(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params); public <T> T insert(String sql, ResultSetHandler<T> rsh); public <T> T insert(String sql, ResultSetHandler<T> rsh, Object... params);

批量執行

支持批量執行增加、修改、刪除操作。

public int[] batch(Connection conn, String sql, Object[][] params); public int[] batch(String sql, Object[][] params);

存儲過程

支持執行存錯過程語句,也支持沒有存儲過程的語句,但沒有存錯過程的語句不建議調用這個方法。

public int execute(Connection conn, String sql, Object... params); public int execute(String sql, Object... params); public <T> List<T> execute(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params); public <T> List<T> execute(String sql, ResultSetHandler<T> rsh, Object... params);

ResultSetHandler接口說明

BeanHandler:將結果集中的第一行數據封裝到一個對應的JavaBean實例中。 BeanListHandler:將結果集中的每一行數據都封裝到一個對應的JavaBean實例中,再存放到List里。 ArrayHandler:將結果集中的第一行數據轉成對象數組。 ArrayListHandler:將結果集中的每一行數據都轉成一個對象數組,再存放到List中。 MapHandler:將結果集中的第一行數據封裝到一個Map里,key是列名,value就是對應的值。 MapListHandler:將結果集中的每一行數據都封裝到一個Map里,再存放到List ScalarHandler:將結果集第一行的某一列放到某個對象中。

關閉資源與事務處理

是否自動關閉Connection資源是由創建QueryRunner時使用的構造器決定的:

1)如果傳入了數據源,那么Connection會自動關閉,在調用增刪查改的方法時就不需要傳入Connection。這種方式會導致每次執行SQL都會建立新連接,在SQL執行完畢后會斷開連接,無法通過Connection控制事務。

2)如果沒有傳入數據源,那么Connection需要手動關閉,在調用增刪查改方法時需要手動傳入Connection。這種方式在執行SQL時不會獲取新連接,也不會在SQL執行完畢后斷開連接,可以根據傳入的Connection控制事務。

以上就是JAVA使用DBUtils操作數據庫的詳細內容,更多關于DBUtils操作數據庫的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
主站蜘蛛池模板: 欧美成a| 久久这里一区二区精品 | 97在线观看视频免费 | 国产成年人 | 国产精品综合一区二区 | 成人欧美视频在线观看 | 亚洲在线观看 | 国产欧美综合在线一区二区三区 | 精品免费久久 | 精品国产一区在线观看 | 国产aⅴ片 | 网友自拍第一页 | 国产成人亚洲精品无广告 | 久久久久久久久久综合情日本 | 有码一区 | 国产亚洲精品久久久久91网站 | 亚欧毛片 | 97精品福利视频在线 | 国产美女无遮挡软件 | 久久精品成人欧美大片免费 | 国产精品爽爽va在线观看无码 | 欧美激情一级欧美精品 | 精品国产综合区久久久久久 | 国产亚洲精品久久精品6 | 男女免费视频 | 亚洲天天在线 | 老司机精品福利视频 | 国产高清精品在线 | 加勒比在线视频 | 亚洲国产一 | 台湾精品视频在线观看 | 高清大学生毛片一级 | 王朝影院一区二区三区入口 | 国产乱码一区二区三区四川人 | 国产成人在线影院 | 国产高清精品在线 | 国产高清一区二区三区四区 | 中文无码日韩欧免费视频 | 亚洲综合久久久 | 岛国精品成人 | 精品国产亚一区二区三区 |