最经写web程序越来越想用DbUtils这个组建,屡试不爽。DbUtils组件也不是做了什么复杂的的事,只是封装了一些JDBC常用的操作,让我们省去好多的数据业务的代码,简直就是忒了。
下面我就来说说这个DbUtils的常用方法说明:
对于数据库操作,就是增删改查。
1)在进行查询(select)时,对于直接利用JDBC API访问数据库时,大多都采用两种返回值,一种是取得的结果集是List,一种是实体类(VO)。
2)在进行增删改(insert,delete,update)时,对于直接利用JDBC API访问数据库时,返回值一般都是void,因为在增删改之后成功无结果集返回。
下面我就来说说这个DbUtils的常用方法的用法:蚂蚁奋斗 antstrive.net
在进行操作之前,我们先来说说,DbUtils加载数据库驱动和创建数据库连接的一些通用方法,下面的实例都用sql server 2005 做示范。
DbUtils加载驱动
(1)加载驱动:DbUtils.loadDriver(“驱动程序的字符串”):
(2)创建连接:创建数据库连接,这个就是JDBC中的方法。
(3)关闭连接:DbUtils.close(“数据库连接”);
代码如下:
1
6 public Connection openConnection() throwsSQLException
7 {
8 DbUtils.loadDriver(DRIVATENAME);
9 returnDriverManager.getConnection(URL,UID,PWD);
10 }
11
14 publicvoid closeConnection(conn)
15 {
16 DbUtils.close(conn);
17 }
DRIVATENAM代表加载驱动的字符串
URL代表加载驱动的连接字符串
UID代表访问数据库的用户名 PWD代表访问数据库的密码
1. 查询
(1)查询一条数据
1
9 public Object load(String sql,Object[]params,ResultSetHandler rsh) throws SQLException
10 {
11 QueryRunner run= newQueryRunner();
12 Object result=run.query(conn, sql,params, rsh);
i. //执行sql语句
13 DbUtils.close(conn); //关闭连接
14 return result; //返回结果(Object)
15 }
16
24 publicList executequery(String sql,Object[] params,ResultSetHandler rsh) throwsSQLException
25 {
26 QueryRunner run = newQueryRunner();
27 List result= (List) run.query(conn,sql, params, rsh);
28 DbUtils.close(conn);
29 return result;
30 }
(2)查询多条数据
38 publicList executequery(String sql,ResultSetHandler rsh) throws SQLException
39 {
40 open();
41 QueryRunner run = newQueryRunner();
42 List result= (List) run.query(conn,sql, rsh);
43 DbUtils.close(conn);
44 return result;
45 }
2. 增删改
52 publicvoid update(String sql,Object[] params) throws SQLException
53 {
54 QueryRunner run = newQueryRunner();
55 run.update(conn,sql,params);
56 DbUtils.close(conn);
57 }