DbUtils的使用
Posted *青锋*
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DbUtils的使用相关的知识,希望对你有一定的参考价值。
Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能
导入jar包
- c3p0-0.9.1.2-jdk1.3.jar
- c3p0-0.9.1.2.jar
- c3p0-oracle-thin-extras-0.9.1.2.jar
- commons-dbutils-1.4.jar
- mysql-connector-java-5.1.7-bin.jar
增删改
public class TestDbUtils { @Test public void test() throws SQLException { ComboPooledDataSource ds = new ComboPooledDataSource(); QueryRunner runner = new QueryRunner(ds); //增加 /*String sql = "insert into person values(null,?,?,?,null)"; runner.update(sql,"qf",21,new Date(0));*/ //删除 /*String sql = "delete from person where id>?"; runner.update(sql,18);*/ //修改 String sql = "update person set name=? where id=?"; runner.update(sql,"smile",18); } }
查询
查询一个
1 public class TestDbUtils { 2 3 @Test 4 /* 5 * 匿名内部类实现 6 */ 7 public void test() throws SQLException { 8 ComboPooledDataSource ds = new ComboPooledDataSource(); 9 QueryRunner runner = new QueryRunner(ds); 10 11 Person person = runner.query("select * from person where id=?", new ResultSetHandler<Person>() { 12 13 @Override 14 public Person handle(ResultSet rs) throws SQLException { 15 Person p = null; 16 while(rs.next()) { 17 String name = rs.getString("name"); 18 int age = rs.getInt("age"); 19 Date time = rs.getDate("time"); 20 String address = rs.getString("address"); 21 p = new Person(name, age, time, address); 22 } 23 return p; 24 } 25 }, 2); 26 System.out.println(person); 27 } 28 29 @Test 30 /* 31 * 使用ResultSetHandler接口的实现类 32 */ 33 public void test2() throws SQLException { 34 ComboPooledDataSource ds = new ComboPooledDataSource(); 35 QueryRunner runner = new QueryRunner(ds); 36 37 Person person = runner.query("select * from person where id=?", new BeanHandler<Person>(Person.class), 2); 38 System.out.println(person); 39 } 40 }
查询多个
1 public class TestDbUtils { 2 3 /* 4 * 使用ResultSetHandler接口的实现类 5 */ 6 @Test 7 public void test2() throws SQLException { 8 ComboPooledDataSource ds = new ComboPooledDataSource(); 9 QueryRunner runner = new QueryRunner(ds); 10 11 List<Person> list = runner.query("select * from person ", new BeanListHandler<Person>(Person.class)); 12 for (Person person : list) { 13 System.out.println(person); 14 } 15 } 16 }
输出
Person [name=smile, age=12, time=2018-03-06 19:32:35.0, address=null] Person [name=wxf, age=13, time=2018-03-07 19:33:37.0, address=null] Person [name=smile, age=24, time=1970-01-01 00:00:00.0, address=null]
以上是关于DbUtils的使用的主要内容,如果未能解决你的问题,请参考以下文章