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/

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

DbUtils是Apache出品一款简化JDBC开发的工具类的更多相关文章

  1. 12款有助于简化CSS3开发的工具

    网站开发者能通过CSS3为网站设计增添很多时尚元素,CSS3 对CSS规范做了很大的改进.现在,本文将介绍12款有助于简化CSS3开发的工具.  1.CSS3 Pie: 允许在IE上使用CSS3绝大部 ...

  2. JDBC封装的工具类

    1. JDBC封装的工具类 public class JDBCUtil { private static Properties p = new Properties(); private static ...

  3. jdbc连接的工具类

    在不实用框架的情况下,有一个jdbc的工具类来进行数据库的连接就再好不过了,下面提供这个工具类DBUtil.java package org.jdbc.test; import java.io.Inp ...

  4. JDBC连接Oracle工具类

    import java.sql.*;import java.util.ResourceBundle; /** * jdbc工具类,负责: * 1. 加载/注册数据库驱动程序 * 2. 获取数据库连接 ...

  5. 12款简化 Web 开发的 JavaScript 开发框架

    前端框架简化了开发过程中,像 Bootstrap 和 Foundation 就是前端框架的佼佼者.在这篇文章了,我们编制了一组新鲜的,实用的,可以帮助您建立高质量的 Web 应用程序的 JavaScr ...

  6. DBHelper--Java JDBC SSH 连接数据库工具类

    概述 JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库. ----------------------------- ...

  7. JDBC操作数据库工具类(使用阿里Druid原生API创建数据源)

    1.数据库配置类 package com.zdlt.auth.api.common.druid; import java.util.Properties; import static com.alib ...

  8. 开源JDBC工具类DbUtils

    本篇将会详细地介绍Apache公司的JDBC帮助工具类DbUtils以及如何使用.在上一篇中我们已经通过将以前对dao层使用JDBC操作数据库的冗余代码进行了简易封装形成自己的简单工具类JdbcUti ...

  9. 使用JdbcTemplate简化JDBC操作 实现数据库操作

    使用Spring JDBC框架方遍简单的完成JDBC操作,满足性能的需求且灵活性高. Spring JDBC框架由4个部分组成,即core.datasource.object.support. org ...

随机推荐

  1. [Asp.net 5] Configuration-新一代的配置文件(神奇的Binder)

    关于配置文件的目录:[Asp.net 5] Configuration-新一代的配置文件 之前看过MVC4.0的源码,里面就有Binder.作用是将前台页面传递过来的键值对/字典表绑定到特定的对象.此 ...

  2. 如果你恨一个程序员,忽悠他去做iOS开发

    如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...

  3. iOS学习笔记——iOS高级控件

    UITableView UITableView的样式有两种,一种是Grouped(左图),另一种是Plain(右图),如下图,它的属性是style,类型为UITableViewStyle,枚举值分别是 ...

  4. 介绍开源的.net通信框架NetworkComms框架 源码分析(二十 )ConnectionCreate

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  5. EC笔记,第一部分:3.尽量使用const

    03.尽量使用const 1.const概述 2.返回const 为何要返回一个const? 因为如果不返回const,程序员可能写出fun(a,b)=c;这样的代码,也许是因为打字错误可能写出类似i ...

  6. 禅道 Rest API 开发

    在老的 PHP 系统中使用 PHP 5.3以后的库 所谓老的系统,是指没有使用PHP 5.3以上命名空间(namespace)特性编码的系统. 但是,只要你的系统运行在 PHP 5.3及以上的环境,在 ...

  7. 【FOL】第一周

    本来打算按计划做下去的,发现原来那个sprite虽然功能强大,但是对我想要做的东西来说,冗余似乎有些多,决定自己写一个. 之前做了一段时间的h5游戏,用的是panda.js,发现这个引擎封装的还不错, ...

  8. 十大Intellij IDEA快捷键

    转载:http://blog.csdn.net/dc_726/article/details/42784275 Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一 ...

  9. JS代码实用代码实例(输入框监听,点击显示点击其他地方消失,文件本地预览上传)

    前段时间写前端,遇到一些模块非常有用,总结以备后用 一.input框字数监听 <!DOCTYPE html> <html lang="en"> <he ...

  10. java多线程-线程创建

    Java 线程类也是一个 object 类,它的实例都继承自 java.lang.Thread 或其子类. 可以用如下方式用 java 中创建一个线程,执行该线程可以调用该线程的 start()方法: ...