`
longgangbai
  • 浏览: 7332257 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Commons-dbUtils开发应用和研究(八)

阅读更多

 

Commons  -dbUtils的开发应用如下:

如果你自己观察他代码你会被它的简明。易用征服的

(*^◎^*)   (*^◎^*)

好了开始工作了

 

 z

package cn.com.huawei.opensource.common.dbutils;

import java.sql.Connection;
import java.sql.SQLException;
import java.util.Collection;
import java.util.Map;

import javax.sql.DataSource;

import org.apache.commons.dbutils.BasicRowProcessor;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.RowProcessor;
import org.apache.commons.dbutils.handlers.BeanHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.apache.commons.dbutils.handlers.KeyedHandler;
import org.apache.commons.dbutils.handlers.MapHandler;
import org.apache.commons.dbutils.handlers.MapListHandler;

import cn.com.huawei.opensource.common.pool.dbcppool.DataBaseSource;
/**
 *
 * @author bailonggang
 * 2009-2-26
 * 下午11:55:40
 */
public class DBUtils {
 private String driverClass;

 private String url;

 private String username;

 private String password;

 public DataSource getDataSource() {

  return DataBaseSource.getDbcpDataSource(driverClass, url, username,
    password);
 }
 
 /**
  * 添加删除修改的方法的应用
  * 
  * @param sql
  * @param params
  * @throws SQLException
  */
 public void executeUpdate(String sql, Object[] params) throws SQLException {
  QueryRunner run = new QueryRunner(getDataSource());
  run.update(sql, params);
 }
 /**
  * 修改添加修改删除使用事务
  * @param con
  * @param sql
  * @param params
  */
 public void executeUpdateWithTrans(Connection con,String sql, Object[] params)  {
  QueryRunner run = new QueryRunner();
  try {
   if(!con.isClosed())
   {
    con.setAutoCommit(false);        
    run.update(sql, params);
       con.commit(); 
       DbUtils.commitAndClose(con);
   }  
  } catch (SQLException e) {
   DbUtils.rollbackAndCloseQuietly(con);
  }
 }
 /**
  * 查询结果以Collection的形式出现(List中的每一个对象是以一种Bean形式)
  *
  * @param sql
  * @param cls
  * @param params
  * @return
  * @throws SQLException
  */
 public Collection findAll(String sql, Class cls, Object[] params)
   throws SQLException {
  /**
   *
   */
  ResultSetHandler rowhandler = new BeanListHandler(cls);
  QueryRunner run = new QueryRunner(getDataSource());
  return (Collection) run.query(sql, params, rowhandler);
 }
 
 /**
  * 查询结果以Map形式出现的方法
  *
  * @param query
  * @param cls
  * @param params
  * @return
  * @throws SQLException
  */
 public Map executeForMap(String query, Class cls, Object[] params)
   throws SQLException {
  RowProcessor rowprocessor = new BasicRowProcessor();
  QueryRunner run = new QueryRunner(getDataSource());
  //MapHandler将一条记录转换为Map对象
  ResultSetHandler rshandler = new MapListHandler(rowprocessor);
  return (Map) run.query(query, params, rshandler);
 }

 /**
  * 查询单个对象转换为Map
  *
  * @param sql
  * @param clsName
  * @return
  * @throws SQLException
  * @throws ClassNotFoundException
  */
 public Map findByKey(String sql, String clsName,Object[] params) throws SQLException,
   ClassNotFoundException {
  RowProcessor rowprocessor = new BasicRowProcessor();
  //MapHandler将一条记录转换为Map对象
  ResultSetHandler rshandler = new MapHandler(rowprocessor);
  QueryRunner run = new QueryRunner(getDataSource());
  return (Map) run.query(sql, params,rshandler);
 }
 /**
  * 查询通过主键查询单个对象
  * @param keyField
  * @param sql
  * @return  返回一个Map其中列名称为键值
  * @throws SQLException
  */
 public Map findByKey(String keyField,String sql) throws SQLException
    {
   ResultSetHandler rsh= new KeyedHandler(keyField);
   QueryRunner queryRunner=new QueryRunner();
   return (Map) queryRunner.query(sql, rsh);
    }

 /**
  * 查询单个对象转换为Object
  *
  * @param sql
  * @param clsName
  * @param params
  * @return
  * @throws SQLException
  * @throws ClassNotFoundException
  */
 public Object findByKey(String query, Class cls, Object[] params)
   throws SQLException {
  QueryRunner run = new QueryRunner(getDataSource());
  RowProcessor rowprocessor = new BasicRowProcessor();
  ResultSetHandler rshandler = new BeanHandler(cls, rowprocessor);
  return run.query(query, params, rshandler);
 }

 /**
  * 批处理操作的应用
  *
  * @param sql
  * @param params
  * @param cls
  * @return
  * @throws SQLException
  */
 public int[] executeUpdateBatch(String sql, Object[][] params, Class cls)
   throws SQLException {
  QueryRunner run = new QueryRunner(getDataSource());
  return run.batch(sql, params);
 }

 public String getDriverClass() {
  return driverClass;
 }

 public void setDriverClass(String driverClass) {
  this.driverClass = driverClass;
 }

 public String getPassword() {
  return password;
 }

 public void setPassword(String password) {
  this.password = password;
 }

 public String getUrl() {
  return url;
 }

 public void setUrl(String url) {
  this.url = url;
 }

 public String getUsername() {
  return username;
 }

 public void setUsername(String username) {
  this.username = username;
 }

}

分享到:
评论

相关推荐

    commons-dbutils.jar.rar

    **正文** `commons-dbutils.jar.rar` 是一个包含Apache Commons DBUtils库的不同版本的压缩文件,主要用于Java应用程序中的...无论是在学习还是在实际开发中,了解和掌握DBUtils都是提高数据库操作效率的重要一步。

    commons-dbutils-1.6.rar所有jar包

    总的来说,Apache Commons DBUtils是Java开发中一个强大的数据库工具库,它的出现大大简化了JDBC的使用,提高了开发效率和代码的可读性。对于需要处理数据库操作的Java项目,DBUtils是一个值得考虑的选择。

    commons-dbutils-1.4.jar

    Apache Commons DBUtils是Apache软件基金会开发的一个开源项目,它提供了一套简洁、高效且实用的工具类,用于简化Java应用程序中的数据库操作。这个项目的最新版本为"commons-dbutils-1.4.jar",它的主要目标是减轻...

    commons-dbutils.jarv1.6官方免费版

    commons-dbutils.jar是在java架构开发时十分重要的一款.jar包,正确的使用commons dbutils可以让你的开发事半功倍,如果您在开发过程中缺少这款jar包,马上来下载commonsdbutils jar包吧! 软件功能: commons-...

    commons-dbutils-1.7.jar

    总结,Apache Commons DBUtils作为Java中的数据库操作利器,以其简洁、安全、高效的特点,极大地简化了开发人员与数据库交互的工作。它在处理日常的CRUD操作时表现出色,是Java开发者不可或缺的工具之一。了解并熟练...

    commons-dbutils-1.6

    总的来说,Apache Commons DBUtils是Java开发中一个非常实用的工具,通过提供简洁的API和强大的异常处理,使得数据库操作变得更加便捷和安全。对于任何需要与数据库交互的Java应用,DBUtils都是一个值得考虑的选择。

    commons-dbutils-1.1,commons-dbutils-1.3资源包

    DBUtils的核心类和接口位于`org.apache.commons.dbutils`包下,可以直接导入使用。 例如,要执行一个SQL查询并获取结果集的Bean列表,可以这样做: ```java QueryRunner runner = new QueryRunner(); List<MyBean>...

    commons-dbutils-1.5

    Apache Commons DBUtils是Java开发中一个非常实用的数据库操作库,尤其在处理简单和重复的数据库访问任务时,它提供了一种简洁、高效的方式。这个"commons-dbutils-1.5"版本是DBUtils项目的早期稳定版本,它包含了对...

    commons-dbutils-1.7-bin,commons-dbutils 1.7 的ar

    Apache Commons DBUtils 是一个开源的 Java 库,它简化了数据库操作,为开发人员提供了方便、安全的数据库访问...由于它的简单易用和强大的功能,Apache Commons DBUtils 在Java Web应用和企业级开发中得到了广泛应用。

    commons-dbutils-1.7.zip

    Apache Commons DBUtils是一个Java库,它为数据库操作提供了一些实用工具和帮助类,极大地简化了JDBC编程。这个"commons-dbutils-1.7.zip"压缩包包含了版本1.7的DBUtils库,这是一个在2005年发布的稳定版本。DBUtils...

    commons-dbutils-1.6.jar

    在实际开发中,通过引入`commons-dbutils-1.6.jar`,我们可以快速构建数据库操作的代码,减少错误,提高代码质量。不过,需要注意的是,虽然DBUtils简化了JDBC,但仍然需要对SQL和数据库有一定的理解。此外,随着...

    commons-dbutils-1.3

    Apache Commons DBUtils是Java开发中的一个实用工具库,专门用于简化数据库操作。它是一个轻量级的框架,基于Java JDBC API,旨在使数据库编程变得更加简单和健壮。这个"commons-dbutils-1.3"版本是该库的一个早期...

    JavaWeb需要用到的jar包_jar包_javaweb_commons-dbutils-1.3_

    总的来说,commons-dbutils和commons-beanutils是JavaWeb开发中非常实用的工具库,它们简化了数据库操作和对象属性处理,提高了开发效率。合理利用这些库,可以打造更健壮、易于维护的JavaWeb应用。

    commons-dbutils-1.2.rar

    Apache Commons DBUtils是一个Java库,它为数据库操作提供了一些实用工具和抽象,简化了数据库编程。这个"commons-dbutils-1.2.rar"文件包含了Apache Commons DBUtils的1.2版本,这是一个历史悠久且广泛使用的开源...

    commons-dbutils-1.3-bin

    Apache Commons DBUtils是Java开发中一个非常实用的数据库操作库,它简化了JDBC(Java Database Connectivity)的使用,提供了一种更安全、更高效的方式来处理数据库操作。这个"commons-dbutils-1.3-bin"压缩包包含...

    java web中的commons-dbutils-1.3-bin.zip

    Java Web开发中,Apache Commons DBUtils是一个非常实用的...结合Commons Logging,我们可以轻松管理和调试应用程序的日志,进一步优化开发流程。在实际项目中,合理使用这两个库,可以极大地提升开发效率和代码质量。

    java commons-dbutils-1.2.jar

    `commons-dbutils-1.2.jar` 是一个由Apache软件基金会开发并维护的Java库,它是Apache Commons项目的一部分,专注于简化数据库操作。这个小巧而实用的库为Java开发者提供了一种简单的方式来处理数据库连接,查询结果...

Global site tag (gtag.js) - Google Analytics