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提供了很多方法用于解决该类问题。

常用的有BeanHandlerBeanListHandlerMapHandlerMapListHandlerScalarHandler具体用法可以查看相应的官方文档,比较简单。

原文地址:https://www.cnblogs.com/zhaopengcheng/p/6681922.html