1. 程式人生 > >Javaweb學習筆記8—DBUtils工具包

Javaweb學習筆記8—DBUtils工具包

今天來講javaweb的第8階段學習。DBUtils技術,DBUtils是我們操作資料庫很常用的功能,雖然後期使用都是它的封裝結果,但是也需要掌握。

老規矩,首先先用一張思維導圖來展現今天的部落格內容。

ps:我的思維是用的xMind畫的,如果你對我的思維導圖感興趣並且想看到你們跟詳細的備註資訊,請點選下載

另外:如果圖看不清的話請右擊---在新視窗中開啟會清楚很多

一* 概述:

1* 定義:

用於封裝操作資料庫的增刪改查.

2* 特點:

A* 對於資料表的讀操作,他可以把結果轉換成ListArraySetjava集合,便於程式設計師操作.

B* 對於資料表的寫操作

,也變得很簡單(只需寫sql語句).

C* 可以使用資料來源,使用JNDI,資料庫連線池等技術來優化效能.

二* 常用類:

1* QueryRunner:

1.1* 建構函式:

* QueryRunner():預設無參構造.

* QueryRunner(DataSource ds):傳遞連線池的構造.

1.2* 常用方法:

* query()方法:用於執行查詢操作.

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

* query(String sql, ResultSetHandler<T> rsh, Object... params)

* update()方法:用於執行增刪改操作.

* update(Connection conn, String sql, Object... params)

     * update(String sql, Object... params)

2* ResultSetHandler介面:

 handle(ResultSet rs)方法:

用於將ResultSet結果集型別進行轉換.

三 * 兩種方式管理事務:

1* 手動管理事務:

* QueryRunner()

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

* update(Connection conn, String sql, Object... params)

2* 工具管理事務:

* QueryRunner(DataSource ds)

* query(String sql, ResultSetHandler<T> rsh, Object... params)

* update(String sql, Object... params)

四* ResultSethandler:

通過上述查詢語句可以發現,每次去實現ResultSetHandler的方法非常麻煩。其實ResultSetHandler介面提供了九個實現類供使用,分別如下:

1* ArrayHandler:把結果集中的第一行資料轉成物件陣列.

2 * ArrayListHandler:把結果集中的每一行資料都轉成一個物件陣列,再存放到List.

3* BeanHandler:將結果集中的第一行資料封裝到一個對應的JavaBean例項中.

4* BeanListHandler:將結果集中的每一行資料都封裝到一個對應的JavaBean例項中,存放到List.

5* MapHandler:將結果集中的第一行資料封裝到一個Map,key是列名,value就是對應的值.

6* MapListHandler:將結果集中的每一行資料都封裝到一個Map,然後再存放到List.

7* ColumnListHandler:將結果集中某一列的資料存放到List.

8* KeyedHandler:將結果集中的每一行資料都封裝到一個Map,再把這些map再存到一個map,key為指定的列.

9* ScalarHandler:進行單值查詢