DBUtils
如果只使用JDBC进行开发,我们会发现冗余代码过多,为了简化JDBC开发,本案例我们讲采用apache commons组件一个成员:DBUtils。
DBUtils就是JDBC的简化开发工具包。需要项目导入commons-dbutils-1.6.jar才能够正常使用DBUtils工具。
概述
DBUtils是java编程中的数据库操作实用工具,小巧简单实用。
DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码。
Dbutils三个核心功能介绍
- QueryRunner中提供对sql语句操作的API.
- ResultSetHandler接口,用于定义select操作后,怎样封装结果集.
- DbUtils类,它就是一个工具类,定义了关闭资源与事务处理的方法
对于其操作,使用详细看代码:
package demo02;
import java.sql.Connection;
import java.sql.SQLException;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import myjdbcUtils.jdbcUtilsconfig;
package demo02;
import java.sql.Connection;
import java.sql.SQLException;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import myjdbcUtils.jdbcUtilsconfig;
/*
* 使用QueryRunner类实现对数据表的
* Updata,Insert,Delete
* 调用QueryRunner类方法update(Connection conn, String sql, Object... params)
* 返回值是int型(操作成功的行数)
* Object... params可变参数。object类型,sql语句会出现?占位符
* 数据库连接对象,使用自定义工具类传递
*/
public class QueryRunnerDemo {
private static Connection con=jdbcUtilsconfig.getconnection();
public static void main(String[] args) throws SQLException {
// insert();
// update();
delete();
}
/*
* 定义一个方法,使用QueryRunner类方法updata向数据库添加数据
*/
public static void insert() throws SQLException{
QueryRunner qr=new QueryRunner();
//调用QueryRunner方法执行SQL语句
String sql="insert into sort (sname,sprice,sdesc) values (?,?,?)";
//将三个?占位符的实际参数写在数组中,或者直接写进去都可以
//写数组的时候只能是object类型数组,因为我们不确定每一个数据的类型
Object[] params= {"体育用品",600,"健身强体"};
int row=qr.update(con, sql, params);
System.out.println(row);
DbUtils.closeQuietly(con);
}
/*
* 定义方法,使用QueryRunner类的方法,updata进行数据修改
*/
public static void update() throws SQLException {
QueryRunner qr=new QueryRunner();
String sql="update sort set sname=?,sprice=?,sdesc=? where sid=?";
Object[] params= {"花卉",100,"送给喜欢的人",5};
int row=qr.update(con, sql, params);
System.out.println(row);
DbUtils.closeQuietly(con);
}
/*
* 定义删除方法
*/
public static void delete()throws SQLException{
QueryRunner qr=new QueryRunner();
String sql="delete from sort where sid=?";
int row=qr.update(con, sql, 8);
System.out.println(row);
DbUtils.closeQuietly(con);
}
}
DBUtils的jar包下载:
[资源]https://pan.baidu.com/s/1mKhAVCY6SMb1WMJLSxL5WA
提取码:ipuf