dbutil组件的常见用法
该工具包主要用来操作数据库,进行增删改查。将结果包装到对象或对象集合中。
在写web项目的时候,经常会涉及到数据库的操作。比如连接数据库获取连接对象、执行sql语句、获得结果。如果对每一个方法都写这么多重复代码比较繁重。commons-dbutils-1.6包将我们冲这么繁重的任务中解放出来。
该包中比较重要的对象是QueryRunner,常用的方法
1)update //执行增加、删除、修改
2)query // 执行查询
说明:如果在新建一个QueryRunner对象时传入了DataSource 对象,那么在执行SQL语句的时候不需要再传入Connection对象了,因为它会自动在DataSource中获得。
例子:
1)update 操作
public void saveUser(User user) { String sql = "INSERT INTO USER(uname, ugender, uage, uemail, utel, uaddress) VALUES(?,?,?,?,?,?)"; try { qr.update(conn, sql, user.getUname(), user.getUgender(), user.getUage(), user.getUemail(), user.getUtel(), user.getUaddress()); } catch (SQLException e) { e.printStackTrace(); } finally { JdbcUtil.closeConnection(conn); } }
2)查询操作
public User getUser(User user) { String sql = "SELECT * FROM USER WHERE uemail=?"; User user2 = null; try { user2 = qr.query(conn, sql, new BeanHandler<User>(User.class), user.getUemail()); } catch (SQLException e) { e.printStackTrace(); } finally { JdbcUtil.closeConnection(conn); } return user2; }
代码中有些类变量,定义如下
private Connection conn = JdbcUtil.getConnection(); //用于获取数据库的连接 private QueryRunner qr = new QueryRunner();
在执行查询操作中,经常需要使用保存结果为一个对象,或者一个对象集合。commons-dbutils-1.6提供了很多方法用于解决该类问题。
常用的有BeanHandler, BeanListHandler, MapHandler, MapListHandler, ScalarHandler具体用法可以查看相应的官方文档,比较简单。
学习过程中,难免出错。如果您在阅读过程中遇到不太明白,或者有疑问。欢迎指正...联系邮箱crazyCodeLove@163.com
如果觉得有用,想赞助一下请移步赞助页面:赞助一下