Dbutils

来源:互联网 发布:法律专业 知乎 编辑:程序博客网 时间:2024/06/05 09:14

    什么是Dbutils

          Dbutils是操作数据库的组件,对传统操作数据库的类进行二次封装,可以把结果集转化成List。就是将有参数和无参数增删改查进行了封装。


   为什么要使用Duutils

      如果使用JDBC进行开发,我们会发现冗余代码过多。JDBC进行项目开发的时候,我们使用增删改查进行数据查询,如果我们做一个很大的项目的时候,这些语句需要反复使用,我们可以将这些语句进行封装,使用的时候就调用。


 Dbutils如何使用

  需要进行导包,这是一个第三方jar包,我们手动导入后,才可以使用里面的类。

        导入的包为:Commons-dbUtils-1.4jar。该jar包封装并简化了JDBC,简化了我们的代码。


 利用Dbutils中操作数据库的类


   它是apachecommons组件一个成员:Dbutils java编程中数据库操作一个实用的工具,有三个核心功能:

       QueryRunner update用来表示数据更新操作,query用来进行数据查询


       ResultSetHandler接口(结果集处理):这个主要是针对查询出来的数据进行封装


利用QueryRunner进行增删改查 


插入操作:Connection con = JDBCUtil.getConnetion();  // 将数据库连接封装到了一个工具    进行连接QueryRunner qr=new QueryRunner();String sql="INSERT INTO rentinfo (TYPE,rent,areq,agencyPrice)VALUES (?,?,?,?)";Object[] params={"主卧",2000,16,0};int row = qr.update(sql);if(row>0){System.out.println("更新成功");}else{System.out.println("更新失败");} JDBCUtil.close();

删除操作:Connection con = JDBCUtil.getConnetion();//进行查询QueryRunner qr=new QueryRunner();String sql="DELETE  FROM rentinfo WHERE TYPE=? AND rent=?";Object[] parms={"主卧",2000};int row = qr.update(sql);if(row>0){System.out.println("更新失败");}else{System.out.println("更新成功");

查询操作                Connectioncon = JDBCUtil.getConnetion();               QueryRunner qr=new QueryRunner();               String sql="SELECT * FROM rentinfoWHERE TYPE=?";                // String params="主卧";//知道参数类型的情况               Object[] params={"主卧"};//不知道参数类型               rentinfo qu = qr.query(con, sql,newBeanHandler<>(rentinfo.class),params);               System.out.println(qu);               con.close();
 
  进行查询操作的时候,有时候返回只有一条数据,有的时候返回的就很多条数据。进行查询的时候对结果集的处理有几个类,我们常用的有以下几个类

  

    如果数据集只有一条,一般用BeanHandler进行封装,也就是将第一条数据封装到实体中。

    如果数据集有多条,一般用BeanListHandler进行封装,也就是将每一行数据作为一个对象,封装到集合中。


总结:数据库操作几乎是一个项目中,比较重要的一部分了。增删改查我们再熟悉不过了,只有熟练掌握了这些基本操作,让我们更好的提高效率。







0 0