DbUtils是Apache出品一款简化JDBC开发的工具类

DbUtils

    - DbUtils是Apache出品一款简化JDBC开发的工具类
    - 使用DbUtils可以让我们JDBC的开发更加简单
    - DbUtils的使用:
        - 需要导入一个jar包:
            commons-dbutils-1.6.jar
        - 核心类
            QueryRunner --> 查询执行器
        - 方法:
 
            int update(Connection conn, String sql, Object... params)
                - update用于执行增删改的语句
                - 返回一个int型的值,表示执行完SQL语句影响到的行数
                - 参数:
                    Connection conn --> 数据库连接
                    String sql --> 要执行的SQL语句 (INSERT INTO t_user VALUES(null,?,?,?,?) )
                    Object... params --> 可变参数表示的是用来填充占位符的内容
 
            <T> T query(Connection conn, String sql, ResultSetHandler<T> rsh, Object... params)       
                - query用于执行查询数据库的操作
                - 返回一个返现,返回的是查询到的结果
                - 参数:
                    Connection conn --> 数据库连接
                    String sql --> 要执行的SQL语句
                    ResultSetHandler<T> rsh --> 结果集的处理器,DbUtils会调用它的实现类去封装结果集
                    Object... params --> 可变参数表示的是用来填充站位符的内容
 
        - ResultSetHandler
            - ResultSetHandler用于将一个结果集转换为一个Java对象
            - 当我们调用QueryRunner的query方法时,需要传一个ResultSetHandler的实现类,
                当方法查询到结果时,会调用实现类的handle来封装结果集
            - 方法:
                T handle(ResultSet rs) throws SQLException
                 -当该方法被调用时,查询到结果集将会作为参数传递进来
                    我们可以将结果集转换为对象并返回
            - 我们可以自己来创建一个实现类实现该接口
 
        - 在DbUtils中已经为我们预先创建了多个Handler,大部分情况我们直接使用已经创建Handler即可
            而不用手动实现。
        - 常用的处理器:
            BeanHandler:
                - BeanHandler用于将一个结果集转换为一个JavaBean
                - 在BeanHandler中没有提供无参的构造器
                    BeanHandler(Class<T> type)
                - 这个构造器的参数就是目标对象的Class对象
                - 它是通过反射将属性封装进对象               
                - 它是调用JavaBean中的setter方法,为属性设置值
                - 注意在我们JavaBean的规范中,属性名是以getter和setter方法名为准的,而不是以变量名位置的
                    一般情况下变量名和getter和setter方法名是一致的。
 
            BeanListHandler
                - 将查询到结果集转换为一个集合(List)
                - 他的使用方式和BeanHandler类似
                - BeanListHandler也是只有有参的构造器:
                    BeanListHandler(Class<T> type)
                - 构造器需要一个JavaBean的Class对象,List存在什么对象,Class就传谁
 
            MapHandler
                - 将查询到的结果转换为一个Map
                - Map中保存的是键值对结构,键是列名 ,值是查询到的数据.
                - 返回值类型: Map<String,Object>
 
            MapListHandler
                - 将查询到的结果集以List的形式返回,List中保存的是Map
 
            ScalarHandler
                - ScalarHandler可以将查询到的数据的第一行第一列的数据返回
                - 主要用来执行类似于SELECT COUNT(*) FROM t_user这样的语句
 
 
 

转载请注明出处!

http://www.cnblogs.com/libingbin/

感谢您的阅读。如果文章对您有用,那么请轻轻点个赞,以资鼓励。

原文地址:https://www.cnblogs.com/libingbin/p/5985509.html