欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

DBUtils介紹

一、DBUtils介紹 apache

上海網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),上海網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為上海上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請找那個售后服務(wù)好的上海做網(wǎng)站的公司定做!

什么是DBUtils,它的作用

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

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

1.對于數(shù)據(jù)表的讀操作,他可以把結(jié)果轉(zhuǎn)換成List,Array,Set等Java集合,便于程序員操作

2.對于數(shù)據(jù)表的寫操作,也變得很簡單(只需寫sql語句)

3.可以使用數(shù)據(jù)源,使用JNDI,數(shù)據(jù)庫連接池等技術(shù)來優(yōu)化性能–重用已經(jīng)構(gòu)建好的數(shù)據(jù)庫連接對象

二、DBUtils的三個核心對象

QueryRunner類

ResultSetHandler接口

DBUtils類

QueryRunner類

QueryRunner中提供對sql語句操作的API

它主要有三個方法

query() //用于執(zhí)行select

update() //用于執(zhí)行insert update delete

batch() //批處理

ResultSetHandler接口

用于定義select操作后,怎樣封裝結(jié)果集

DBUtils類

它就是一個工具類,定義了關(guān)閉資源與事務(wù)處理的方法

三、Dbutils快速入門

導(dǎo)入jar包

創(chuàng)建QueryRunner對象

使用query方法執(zhí)行select語句

使用ResultSetHandler封裝結(jié)果集

使用DBUtils類釋放資源

DBUtils快速入門實現(xiàn)步驟:

導(dǎo)入jar包

注意: c3p0與MySQL驅(qū)動jar也要導(dǎo)入。

創(chuàng)建QueryRunner對象

使用query方法執(zhí)行select語句

使用ResultSetHandler封裝結(jié)果集

使用DBUtils類釋放資源

四、QueryRunner對象

構(gòu)造函數(shù):無錫人流多少錢 http://www.xaytsgyy.com/

new QueryRunner():它的事務(wù)可以手動控制

也就是說此對象調(diào)用的方法(如:query、update、batrch)參數(shù)中要有Connection對象

new QueryRunner(DataSource ds):它的事務(wù)是自動控制的 一個sql一個事務(wù)

此對象調(diào)用的方法(如:query、update、batrch)參數(shù)中無需Connection對象

進行基本的CRUD操作:練一下

public class TestQueryRunner{

@Test

public void testInsert() throws SQLException{

QueryRunner qr = new QueryRunner(C3P0Util.getDataSource());

qr.update("insert into student(NAME, birthday) values(?,?)", "bbb", new Date());

}

@Test

public void testUpdate() throws SQLException{

QueryRunner qr = new QueryRunner(C3P0Util.getDataSource());

qr.update("update student set name=?, birthday=? where id=?", "ccc", new Date(), 1);

}

@Test

public void testDelete() throws SQLException{

QueryRunner qr = new QueryRunner(C3P0Util.getDataSource());

qr.update("delete from student where id=?", 1);

}

@Test

public void testBatch() throws SQLException{

QueryRunner qr = new QueryRunner(C3P0Util.getDataSource());

Object[][] params = new Object[10][]; //高維表示要執(zhí)行多少條sql語句

for(int i = 0; i < params.length; i++){

params[i] = new Object[]{"菜10"+i, "123", "c10@163.com", new Date()};

}

qr.batch("insert into user(username, password, email, birthday) values(?,?,?,?)", params);

}

}

五、ResultSetHandler接口

ResultSetHandler下的所有結(jié)果處理器

ArrayHandler:適合取1條記錄。把該條記錄的每列值封裝到一個數(shù)組中Object[]

ArrayListHandler:適合取多條記錄。把每條記錄的每列值封裝到一個數(shù)組中Object[],把數(shù)組封裝到一個List中

ColumnListHandler:取某一列的數(shù)據(jù)。封裝到List中

KeyedHandler:取多條記錄,每一條記錄封裝到一個Map中,再把這個Map封裝到另外一個Map中,key為指定的字段值

MapHandler:適合取1條記錄。把當(dāng)前記錄的列名和列值放到一個Map中

MapListHandler:適合取多條記錄。把每條記錄封裝到一個Map中,再把Map封裝到List中

ScalarHandler:適合取單行單列數(shù)據(jù)

BeanHandler

BeanListHandler

當(dāng)前文章:DBUtils介紹
URL網(wǎng)址:http://chinadenli.net/article24/giepje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作商城網(wǎng)站、云服務(wù)器、靜態(tài)網(wǎng)站品牌網(wǎng)站設(shè)計、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站