JDBC DBUtils

DbUtils类

  • 提供如关闭连接、装载JDBC驱动程序等常规工作的工具类,里面的所有方法都是静态的
  • public static void close(…) throws java.sql.SQLException:DbUtils类提供了三个重载的关闭方法。这些方法检查所提供的参数是不是NULL,如果不是的话,它们就关闭Connection、Statement和ResultSet。
  • public static void closeQuietly(…): 这一类方法不仅能在Connection、Statement和ResultSet为NULL情况下避免关闭,还能隐藏一些在程序中抛出的SQLEeception。
  • public static void commitAndCloseQuietly(Connection conn): 用来提交连接,然后关闭连接,并且在关闭连接时不抛出SQL异常。
  • public static boolean loadDriver(java.lang.String driverClassName):这一方装载并注册JDBC驱动程序,如果成功就返回true。使用该方法,你不需要捕捉这个异常ClassNotFoundException。

QueryRunner类

  • 该类简单化了SQL查询,它与ResultSetHandler组合在一起使用可以完成大部分的数据库操作,能够大大减少编码量。

  • update操作
    // 1.创建queryRunner实现类
    QueryRunner queryRunner = new QueryRunner();

      // 2.使用update方法
      String sql = "delete from customers where id in (?,?)";
    
      Connection conn = JDBCTools.getConnection();
    
      queryRunner.update(conn, sql, 4, 5);
    
  • query操作
    queryRunner.query(connection, sql, new Handler(), para);

    • ScalarHandler: 把结果集转为一个数值(可以是任意基本数据类型和字符串, Date 等)返回
    • MapListHandler: 将结果集转为一个 Map 的 List,多条记录对应的 Map 的集合.
    • MapHandler: 返回 SQL 对应的第一条记录对应的 Map 对象.键: SQL 查询的列名(不是列的别名), 值: 列的值.
    • BeanListHandler: 把结果集转为一个 List, 该 List 不为 null, 但可能为空集合(size() 方法返回 0)
    • BeanHandler: 把结果集的第一条记录转为创建 BeanHandler 对象时传入的 Class参数对应的对象.

推荐阅读更多精彩内容