日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql dbutil_DBUtil详解

發(fā)布時(shí)間:2023/12/9 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql dbutil_DBUtil详解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Common Dbutils是操作數(shù)據(jù)庫的組件,對(duì)傳統(tǒng)操作數(shù)據(jù)庫的類進(jìn)行二次封裝,可以把結(jié)果集轉(zhuǎn)化成List。

DBUtils包括3個(gè)包:

org.apache.commons.dbutils

org.apache.commons.dbutils.handlers

org.apache.commons.dbutils.wrappers

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

org.apache.commons.dbutils

DbUtils 關(guān)閉鏈接等操作

QueryRunner 進(jìn)行查詢的操作

org.apache.commons.dbutils.handlers

ArrayHandler :將ResultSet中第一行的數(shù)據(jù)轉(zhuǎn)化成對(duì)象數(shù)組

ArrayListHandler將ResultSet中所有的數(shù)據(jù)轉(zhuǎn)化成List,List中存放的是 Object[]

BeanHandler :將ResultSet中第一行的數(shù)據(jù)轉(zhuǎn)化成類對(duì)象

BeanListHandler :將ResultSet中所有的數(shù)據(jù)轉(zhuǎn)化成List,List中存放的是類對(duì)象

ColumnListHandler :將ResultSet中某一列的數(shù)據(jù)存成List,List中存放的是 Object對(duì)象

KeyedHandler :將ResultSet中存成映射,key為某一列對(duì)應(yīng)為Map。Map中存放的是數(shù)據(jù)

MapHandler :將ResultSet中第一行的數(shù)據(jù)存成Map映射

MapListHandler :將ResultSet中所有的數(shù)據(jù)存成List。List中存放的是Map

ScalarHandler :將ResultSet中一條記錄的其中某一列的數(shù)據(jù)存成Object

org.apache.commons.dbutils.wrappers

SqlNullCheckedResultSet :對(duì)ResultSet進(jìn)行操作,改版里面的值

StringTrimmedResultSet :去除ResultSet中中字段的左右空格。Trim()

主要方法:

DbUtils類:啟動(dòng)類

ResultSetHandler接口:轉(zhuǎn)換類型接口

MapListHandler類:實(shí)現(xiàn)類,把記錄轉(zhuǎn)化成List

BeanListHandler類:實(shí)現(xiàn)類,把記錄轉(zhuǎn)化成List,使記錄為JavaBean類型的對(duì)象

Qrery Runner類:執(zhí)行SQL語句的類

建立三個(gè)Java文件

命名為BeanListExample.java

Guestbook.java

MapListExample.java

源碼:

BeanListExample.java

Code

package com.sy;

import org.apache.commons.dbutils.DbUtils;

import org.apache.commons.dbutils.QueryRunner;

import org.apache.commons.dbutils.handlers.BeanListHandler;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.util.List;

public class BeanListExample {

public static void main(String[] args) {

Connection conn = null ;

String url = " jdbc:mysql://localhost:3306/people" ;

String jdbcDriver = " com.mysql.jdbc.Driver" ;

String user = " root " ;

String password = " hicc " ;

DbUtils.loadDriver(jdbcDriver);

try {

conn = DriverManager.getConnection(url, user, password);

QueryRunner qr = new QueryRunner();

List results = (List) qr.query(conn, " select id,name from guestbook" , new BeanListHandler(Guestbook.class ));

for ( int i = 0 ; i < results.size(); i++ ) {

Guestbook gb = (Guestbook) results.get(i);

System.out.println(" id: " + gb.getId() + " ,name: " + gb.getName());

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

DbUtils.closeQuietly(conn);

}

}

}

Guestbook.java

Code

package com.sy;

public class Guestbook {

private Integer id;

private String name;

public Integer getId() {

return id;

}

public void setId(Integer id) {

this .id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this .name = name;

}

}

MapListExample.java

Code

package com.sy;

import org.apache.commons.dbutils.DbUtils;

import org.apache.commons.dbutils.QueryRunner;

import org.apache.commons.dbutils.handlers.MapListHandler;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.util.List;

import java.util.Map;

public class MapListExample {

public static void main(String[] args) {

Connection conn = null ;

String url = " jdbc:mysql://localhost:3306/people" ;

String jdbcDriver = " com.mysql.jdbc.Driver" ;

String user = " root " ;

String password = " hicc " ;

DbUtils.loadDriver(jdbcDriver);

try {

conn = DriverManager.getConnection(url, user, password);

QueryRunner qr = new QueryRunner();

List results = (List) qr.query(conn, " select id,name from guestmessage" , new MapListHandler());

for ( int i = 0 ; i < results.size(); i++ ) {

Map map = (Map) results.get(i);

System.out.println(" id: " + map.get( " id " ) + " ,name: " + map.get( " name " ));

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

DbUtils.closeQuietly(conn);

}

}

}

使用組建好需要添加commons - dbutils - 1.1 .jar和mysql - connector - java - 5.1 . 6 - bin.jar 兩個(gè)jar包。

配置完畢!!!

// 另一種方法

// 使用dbutils1.0版本

import java.util. * ;

import java.util.logging.* ;

import java.sql.* ;

import org.apache.commons.dbutils.* ;

import org.apache.commons.dbutils.handlers.* ;

public class TestDBUnits {

public static void main(String[]args) throws Exception {

TestDBUnits test = new TestDBUnits();

for ( int i = 0 ; i < 1 ; i ++ ) {

test.testQuery1();

test.testQuery2();

test.testUpdate();

}

}

public void testQuery1(){

try {

QueryRunner qr = new QueryRunner() ;

ResultSetHandler rsh = new ArrayListHandler();

String strsql = " select * from test1" ;

ArrayList result = (ArrayList)qr.query(getConnection() ,strsql ,rsh);

// System.out.print("");

} catch (Exception ex) {

ex.printStackTrace(System.out);

}

}

public void testQuery2(){

try {

QueryRunner qr = new QueryRunner() ;

ResultSetHandler rsh = new MapListHandler();

String strsql = " select * from test1" ;

ArrayList result = (ArrayList)qr.query(getConnection() ,strsql ,rsh);

for ( int i = 0 ; i < result.size() ; i++ ) {

Map map = (Map)result.get(i);

// System.out.println(map);

}

// System.out.print("");

} catch (Exception ex) {

ex.printStackTrace(System.out);

}

}

public void testUpdate(){

try {

QueryRunner qr = new QueryRunner() ;

ResultSetHandler rsh = new ArrayListHandler();

String strsql = " insert test1(page ,writable ,content)values('ttt','ttt','faskldfjklasdjklfjasdklj')" ;

qr.update(getConnection() ,strsql);

// System.out.print("");

} catch (Exception ex) {

ex.printStackTrace(System.out);

}

}

private Connection getConnection() throws InstantiationException,

IllegalAccessException, ClassNotFoundException, SQLException {

String strDriver = " org.gjt.mm.mysql.Driver" ;

String strUrl = " jdbc:mysql://localhost:3306/test" ;

String strUser = " root " ;

String strPass = "" ;

Class.forName(strDriver).newInstance();

return DriverManager.getConnection(strUrl, strUser, strPass);

}

}

總結(jié)

以上是生活随笔為你收集整理的mysql dbutil_DBUtil详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。