php dbutils 使用,DBUtils 的基本使用方法

DBUtils 的基本使用方法

DBUtils 是一个对JDBC进行简单封装的开源工具类库,使用 它可以简化JDBC应用程序的开发,同时也不会影响程序的性能。

在使用DBUtils时主要用到DbUtils和QueryRunner两个类以及一个ResultSethandler接口。

一. DbUtils 类

DbUtils类是一个为做一些诸如关闭连接、装载JDBC驱动程序之类的常规工作提供有用方法的类,比较重要的方法是:close( )、closeQuietly( )、commitAndCloseQuietly( )

其中最常用的方法是closeQuietly( )方法。

这一方法不仅能在连接、声明或者结果集为NULL情况下避免关闭,还能隐藏一些在程序中抛出的SQLException 。如果需要避免捕捉这些异常,用这个方法是非常有用的。

具体代码如下:

DbUtils.closeQuietly( 数据库名 ) ;//关闭数据库连接

二. ResultSetHandler 接口

该接口 执行处理一个 java.sql.ResultSet ,将数据转变并处理为任何一种形式,这样有益于其应用而且使用起来更加容易方便。该接口提供ArrayHandler、ArrayListHandler、BeanHandler、BeanListHandler、MapHandler、MapListHandler、ScalarHandler等执行程序。ResultSetHandler的执行需要一个结果集(ResultSet)作为参数传入,然后才能处理这个结果集,再返回一个对象。因为返回类型是java.lang.Object,所以除了不能返回一个原始的Java类型之外,其它的返回类型并没有什么限制。如果你发现这七个执行程序中没有任何一个提供了你想要的服务,你可以自己写执行程序并使用它。

三. QueryRunner 类

该类能使执行SQL查询简单化,它与ResultSetHandler串联在一起有效地执行一些平常的任务,它能够大大减少所要写的代码码。它包含以下重要的方法:

query(Connection conn,String sql,Object[] params,ResultSetHandler rsh):

该方法执行了一个选择查询,对象数组(Object[] params)中的值被用来作为查询语句sql的置换参数。该方法会内在地处理Statement和ResultSet的创建和关闭。ResultSetHandler对把从ResultSet得来的数据转变成一个更容易的或是应用程序特定的格式来使用。

query(String sql,Object[] params,ResultSetHandler rsh):

这几乎与第一种方法一样;唯一的不同在于它不将数据库连接提供给方法,它是从提供给构造器的数据源(DataSource) 或使用的setDataSource 方法中重新获得的。

query(Connection conn,String sql,ResultSetHandler rsh):

该方法是执行一个不需要参数的查询操作。

update(Connection conn,String sql,Object[] params):

该方法用来执行插入、更新或者删除操作,对象数组(Object[] params)中的值被用来作为更新语句sql的置换参数。

四. 在使用DBUtils时应该注意的问题:

DBUtils是JDBC的简单封装,可以和JDBC混合使用。

DBUtils对结果集自动封装为JavaBean是有着苛刻要求的:必须满足 JavaBean的规范,其次Bean的getter与setter方法的名字与结果集的列名一一对应,而不要求JavaBean的私有成员与表结果集列名一一对应。

DBUtils 可以将结果集封装为各种类型,主要有:Beam/List、 Map/List/Map、数组/List、列/List。

四. DBUtils的使用主要遵循以下步骤:

1. 加载JDBC驱动程序类,并用DriverManager来得到一个数据库连接conn。

Connection conn = ConnectDb.Connect();

实例化QueryRunner,得到实例化对象 qRunner。

QueryRunner qRunner = new QueryRunner();

qRunner.update()方法,执行增改删的sql命令,qRunner.query()方法,得到结果集。

int n = qRunner.update(conn, "sql语句");

DbUtils.closeQuietly(conn);

出处:https://www.cnblogs.com/meiliguo/p/9097026.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值