当前位置: 移动技术网 > IT编程>开发语言>Java > java学习笔记之DBUtils工具包详解

java学习笔记之DBUtils工具包详解

2019年07月19日  | 移动技术网IT编程  | 我要评论

熊出没小游戏大全,梅州,张刘苟

dbutils工具包

一.介绍

dbutils是apache组织开源的数据库工具类。

二.使用步骤

①.创建queryrunner对象

②.调用update()方法或者query()方法执行sql语句

三.构造方法及静态方法

queryrunner类

1.构造方法

①.无参构造

queryrunner qr =new queryrunner();

使用无参构造的时候,调用update方法和query方法时就需要使用带connection 类型参数的重载形式

②.有参构造

queryrunner qr= new queryrunner(datasource datasource);

这个参数是连接池对象

2.静态方法

①.int update(connection con ,string sql ,param);

该方法用于增删改语句的操作

参数介绍:

参数一:连接池对象(这个在无参构造的时候使用)

参数二:sql语句

参数三:可变参数(就是sql占位符的值)

返回值:int类型的 返回受影响的行数

简单update demo

public class demo {
 public static void main(string[] args) throws exception {
  /*
   * 演示有参构造的update()方法
   * 
   * 首先得导入jar包
   * 配置好c3p0的配置文件与准备好c3p0工具类
   * 然后创建queryrunner对象
   * 调用update方法
   * 最后处理结果
   */
  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实现类对象
  * @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 ...)

该方法用于出查询操作

参数介绍:

参数一:connection 数据库连接对象, 使用带参构造时可以不用

参数二:sql语句

参数三:表示对结果集的处理方式 (resultsethandler接口)

arrayhandler: 表示将结果集第一行的数据存入数组

arraylisthandler 将结果集每一行的数据存入数组,多个数组存入集合 list<object[]>

beanhandler 表示将结果集第一行的数据存入java bean对象

beanlisthandler 表示将结果集每一行的数据存入java bean对象 ,多个对象存入集合

columnlisthandler 表示将某一列的数据存入集合

maphandler 表示将结果集第一行的数据存入map集合 :键:列名 值:列的值

maplisthandler 表示将结果集每一行的数据存入map集合 多个map存入list集合 list<map<,>>

scalarhandler 获取一个值: count(*) sum(price)

参数四:可变参数(就是sql占位符的值)

使用beanlisthandler处理方式的demo:

public void demo1() throws exception{
  queryrunner qr = new queryrunner(myc3p0utils.getdatasource()); 
  list<car> 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学习笔记之dbutils工具包详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网