DBUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能,在这个工具类中 QueryRunner 是这个jar包的核心类,所有的操作数据库的方法都被封装在这个类别中更新,查询的都是使用QueryRunner类。
1)BeanHandler: 查询返回单个对象
2)BeanListHandler: 查询返回list集合,集合元素是指定的对象
3) ArrayHandler, 查询返回结果记录的第一行,封装对对象数组, 即返回:Object[]
4) ArrayListHandler, 把查询的每一行都封装为对象数组,再添加到list集合中
5) ScalarHandler (通常单行单列的时候用)
6) MapHandler 查询返回结果的第一条记录封装为map
创建一个table 表中内容为 id,name,age
1.QueryRunner
@Test
public void t1() throws SQLException {
//获得连接对象
Connection conn = JdbcUtil.getConnection();
//建立一个QueryRunner 对象,用来执行语句
QueryRunner qr = new QueryRunner();
String sql = "insert into stu values(null,'张益达',55)";
//调用update方法,可以执行增,删,改等sql语句
qr.update(conn, sql);
conn.close();
}
这个测试就是在运用QueryRunner插入一条信息 。
2.BeanHandler
@Test
public void t2() throws SQLException {
//获得连接对象
Connection conn = JdbcUtil.getConnection();
//建立一个QueryRunner 对象,用来执行语句
QueryRunner qr = new QueryRunner();
String sql1 = "select *from stu where id=1";
Stu query = qr.query(conn, sql1, new BeanHandler<Stu>(Stu.class));
//调用BeanHandler ,用来查询单个返回值,(stu.class)是一个类对象
System.out.println(query);
}
这个测试就是在运用BeanHandler查询1条stu表中id为1的信息。
3.BeanListHandler
@Test
public void t3() throws SQLException {
//获得连接对象
Connection conn = JdbcUtil.getConnection();
//建立一个QueryRunner 对象,用来执行语句
QueryRunner qr = new QueryRunner();
String sql2 = "select * from stu;";
List<Stu> query = qr.query(conn, sql2, new BeanListHandler<>(Stu.class));
// 使用BeanListHandler可以得到一个装载指定类型对象的集合
//遍历一下输出表stu 快捷键 iter +Tab
for (Stu stu : query) {
System.out.println(stu);
}
}
这个测试就是在运用BeanListHandler查询返回list集合,集合元素是指定的对象。