基本`介绍
Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能。
DBUtils是java编程中的数据库操作实用工具,小巧简单实用,
1. 对于数据表的读操作,他可以把结果转换成List,Array,Set等java集合,便于程序员操作;
2. 对于数据表的写操作,也变得很简单(只需写sql语句)
3. 可以使用数据源,使用JNDI,数据库连接池(dbcp,c3p0)等技术来优化性能--重用已经构建好的数据库连接对象,而不像php,asp那样,费时费力的不断重复的构建和析构这样的对象
QueryRunner查询执行类
Queryrunner提供了batch、insert、query和update四个成员方法,分别是批处理、插入、查询、更新
Connection为连接对象,sql为SQL语句,param为单个参数,rsh为结果集处理器,params为参数数组。
QueryRunner类
QueryRunner中提供对sql语句操作的API.
它主要有三个方法
query() 用于执行select
update() 用于执行insert update delete
batch() 批处理
RusultSetHandler结果集处理接口
ResultSetHandler用于处理从ResultSet中获取数据库数据,然后按照一定方法,进行二次封装。DBUtils已经提供了一些实现类,我们可可以直接使用这些实现类,当然也可以通过实现ResultSetHandler接口自定义结果集处理方式。
添加案例:
public static int add(Account account){
String sql = "insert into account values(?,?,?,?,?,?)";
Connection conn = DButilC3P0.getConnection();
QueryRunner qr = new QueryRunner();
Object []params ={account.getAccountId(),account.getPassword(),account.getName(),account.getPhone(),account.getCountry(),account.getRole()};
try {
return qr.update(conn,sql,params);
} catch (SQLException e) {
e.printStackTrace();
}
return -1;
}