真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java學(xué)習(xí)筆記之DBUtils工具包詳解

DBUtils工具包

成都創(chuàng)新互聯(lián)主打移動網(wǎng)站、成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、網(wǎng)絡(luò)推廣、網(wǎng)站維護(hù)、國際域名空間、等互聯(lián)網(wǎng)信息服務(wù),為各行業(yè)提供服務(wù)。在技術(shù)實(shí)力的保障下,我們?yōu)榭蛻舫兄Z穩(wěn)定,放心的服務(wù),根據(jù)網(wǎng)站的內(nèi)容與功能再決定采用什么樣的設(shè)計(jì)。最后,要實(shí)現(xiàn)符合網(wǎng)站需求的內(nèi)容、功能與設(shè)計(jì),我們還會規(guī)劃穩(wěn)定安全的技術(shù)方案做保障。

一.介紹

DBUtils是Apache組織開源的數(shù)據(jù)庫工具類。

二.使用步驟

①.創(chuàng)建QueryRunner對象

②.調(diào)用update()方法或者query()方法執(zhí)行sql語句

三.構(gòu)造方法及靜態(tài)方法

QueryRunner類

1.構(gòu)造方法

①.無參構(gòu)造

QueryRunner qr =new QueryRunner();

使用無參構(gòu)造的時候,調(diào)用update方法和query方法時就需要使用帶Connection 類型參數(shù)的重載形式

②.有參構(gòu)造

QueryRunner qr= new QueryRunner(DataSource dataSource);

這個參數(shù)是連接池對象

2.靜態(tài)方法

①.int update(Connection con ,String sql ,Param);

該方法用于增刪改語句的操作

參數(shù)介紹:

參數(shù)一:連接池對象(這個在無參構(gòu)造的時候使用)

參數(shù)二:sql語句

參數(shù)三:可變參數(shù)(就是sql占位符的值)

返回值:int類型的 返回受影響的行數(shù)

簡單update demo

public class Demo {
 public static void main(String[] args) throws Exception {
  /*
   * 演示有參構(gòu)造的update()方法
   * 
   * 首先得導(dǎo)入jar包
   * 配置好C3P0的配置文件與準(zhǔn)備好C3P0工具類
   * 然后創(chuàng)建QueryRunner對象
   * 調(diào)用update方法
   * 最后處理結(jié)果
   */
  QueryRunner qr = new QueryRunner(C3P0Utils.getDataSource());
  int re = qr.update("update user set name=? where uid=?","張三",2);
  if(re>0){
   System.out.println("修改成功");
  }else {
   System.out.println("修改失敗");
  }
 }
}

附上簡單的C3P0工具類

public class C3P0Utils {
 private static DataSource dataSource=new ComboPooledDataSource();
 /**
  * 獲得DataSource實(shí)現(xiàn)類對象
  * @return
  */
 public static DataSource getDataSource(){
  return dataSource;
 }
 /**
  * 獲得連接
  * @return
  * @throws Exception
  */
 public static Connection getConnection()throws Exception{
  return dataSource.getConnection();
 }
}

②.query(Connection con , String sql ,Param ...)

該方法用于出查詢操作

參數(shù)介紹:

參數(shù)一:Connection 數(shù)據(jù)庫連接對象, 使用帶參構(gòu)造時可以不用

參數(shù)二:sql語句

參數(shù)三:表示對結(jié)果集的處理方式 (ResultSetHandler接口)

ArrayHandler: 表示將結(jié)果集第一行的數(shù)據(jù)存入數(shù)組

ArrayListHandler 將結(jié)果集每一行的數(shù)據(jù)存入數(shù)組,多個數(shù)組存入集合 List

BeanHandler 表示將結(jié)果集第一行的數(shù)據(jù)存入Java Bean對象

BeanListHandler 表示將結(jié)果集每一行的數(shù)據(jù)存入Java Bean對象 ,多個對象存入集合

ColumnListHandler 表示將某一列的數(shù)據(jù)存入集合

MapHandler 表示將結(jié)果集第一行的數(shù)據(jù)存入Map集合 :鍵:列名 值:列的值

MapListHandler 表示將結(jié)果集每一行的數(shù)據(jù)存入Map集合 多個Map存入List集合 List>

ScalarHandler 獲取一個值: count(*) sum(price)

參數(shù)四:可變參數(shù)(就是sql占位符的值)

使用BeanListHandler處理方式的demo:

public void demo1() throws Exception{
  QueryRunner qr = new QueryRunner(MyC3P0Utils.getDataSource()); 
  List list = qr.query("select * from car where price<20 order by price desc", new BeanListHandler<>(Car.class));
  for (Car car : list) {
   System.out.println(car);
  }
 
 }

javaBean類的編寫:

public class Car {
 private int cid;
 private String cname;
 private String company;
 private String grade;
 private double price;
 @Override
 public String toString() {
  return "Car [cid=" + cid + ", cname=" + cname + ", company=" + company + ", grade=" + grade + ", price=" + price
    + "]";
 }
 public int getCid() {
  return cid;
 }
 public void setCid(int cid) {
  this.cid = cid;
 }
 public String getCname() {
  return cname;
 }
 public void setCname(String cname) {
  this.cname = cname;
 }
 public String getCompany() {
  return company;
 }
 public void setCompany(String company) {
  this.company = company;
 }
 public String getGrade() {
  return grade;
 }
 public void setGrade(String grade) {
  this.grade = grade;
 }
 public double getPrice() {
  return price;
 }
 public void setPrice(double price) {
  this.price = price;
 }
 public Car(int cid, String cname, String company, String grade, double price) {
  super();
  this.cid = cid;
  this.cname = cname;
  this.company = company;
  this.grade = grade;
  this.price = price;
 }
 public Car() {
  super();
  // TODO Auto-generated constructor stub
 }
}

以上這篇java學(xué)習(xí)筆記之DBUtils工具包詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持創(chuàng)新互聯(lián)。


當(dāng)前名稱:java學(xué)習(xí)筆記之DBUtils工具包詳解
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/gsjhse.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部