`
13243356
  • 浏览: 36126 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

DBUtil 用法

阅读更多

dbutil 下载

http://commons.apache.org/downloads/download_dbutils.cgi

 

 DbUtils类

ResultSetHandler 接口 

MapListHandler 类  (实现ResultSetHandler 接口)把从数据库中查询出的记录 都 放到List  集合当中, List集合中每一个对象都是Map类型,可以根据这条记录的字段名读出相对应的值

BeanListHandler 类  (实现ResultSetHandler 接口)把从数据库中的记录 放到List集合中 ,List集合中每一个对象都是一个JavaBean类型的对象,可以根据get 方法得到值

QreryRunner类   值行SQL语名,其中一个参数为以上两种类型的对象

 

 

 

 

import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
/**
 * 该类主要完成对数据库的操作
 * 
 */
public class SqlUtil {
	private static String datasoucename ="java:comp/env/jdbc/exam";
	private  DataSource da;
    private static sqlUtil sqlutil = null;

    public static sqlUtil newInstance()
    {
    	if(sqlutil == null) {
    		sqlutil = new sqlUtil();
    	}
    	return sqlutil;
    }
    
    
    public Connection getConnection() throws SQLException
    {
    	synchronized (da) {
			return da.getConnection();
		}
    }
    
	/**
	 * 构造方法,设置数据源
	 * @param datasoucename
	 */
	private sqlUtil() {
		init();
	}

	
	/**
	 * 初始化数据源的方法
	 */
	private void init() {
		try {
			Context ct = new InitialContext();
			this.da = (DataSource) ct.lookup(datasoucename);
			ct.close();
		} catch (NamingException e) {
			e.printStackTrace();
		}

	}

	/**
	 * 对数据增删改的方法,需要一个object的数组,数据是sql语句的占位符
	 * @param sql
	 * @param pring
	 * @return
	 */
	public boolean update(String sql, Object pring[]) {
		QueryRunner qu = new QueryRunner();
		int i = 0;
		boolean flag = false;
		try {
			i = qu.update(getConnection(),sql, pring);
			if(i>=0){
				flag = true;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}

		return flag;
	}

	/**
	 * 对数据查找的方法,需要一个objece的数组,数据是sql语句的占位符,ResultSetHandler参数是你要把查询出的数据转换的类型
	 * 可以是一个javabean   (如:new BeanListHandler (JavaBean.class)或:new MapListHandler )
	 * @param sql
	 * @param pring  参数数组可以为空
	 * @param rsh
	 * @return
	 */
	public List query(String sql, Object pring[], ResultSetHandler rsh) {
		QueryRunner qu = new QueryRunner();
		List result = null;
		try {
			result = (List) qu.query(getConnection(),sql, pring, rsh);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return result;
	}
}

 

 

调用

 

 

/**
	 * 删除
	 * @return boolean
	 * @param ItemPool的Id
	 */
	public boolean deteItemPool(String ipId) {
		String sql1 = "delete from ItemPool where ipId =? ";
//指定所需要的参数 数组
		Object[] pring = {ipId};
//执行更新
		boolean result = sql.update(sql1, pring);
		return result;
	}

 

/**
	 * 根据题库Id查找题库的方法
	 */
	public ItemPool searchItemPoolById(String ipId) {
		String sql1 = "select * from ItemPool where ipId=?";
//指定参数数组
		Object[] pring = {ipId};

		





List list = sql.query(sql1, pring, new BeanListHandler(ItemPool.class));
		ItemPool itempool=(ItemPool)list.get(0);
		return itempool;
	}






 

分享到:
评论
4 楼 李庆辉 2012-06-20  
不错。标记一下
3 楼 dysfzhoulong 2011-05-31  
好,谢谢!
2 楼 zhuyingya87 2009-06-30  
dbutil是dbutils么?

QueryRunner 是做什么的?

   不懂也。。
麻烦讲解下咯。。

1 楼 yunmoxue 2009-06-12  
 

相关推荐

    DBUtils用法整理

    commons-dbutils是Apache组织提供的一个开源 JDBC工具类库,能让我们更简单的使用JDBC。它是一个非常小的类包,花几分钟的时间就能掌握它的使用。

    Python DBUtils

    Python DBUtils 提供了稳固的、持久的到数据库的连接池,支持多线程应用环境。 该项目支持 DB-API 2 兼容数据库接口以及传统的 PyGreSQL 接口。

    DbUtils的用法

    DbUtils的用法,更加简介快速的取得数据库中的数据!!

    commons-dbutils-1.7-API文档-中文版.zip

    赠送jar包:commons-dbutils-1.7.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。

    commons-dbutils-1.7-API文档-中英对照版.zip

    使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 双语对照,边学技术、边学英语。

    DbUtils应用开发例子--DbUtilsExample.zip

    1.DbUtilsExampleBase.java,DbUtils例子的父类,包含了一些常用的方法,获得连接、关闭连接、打印对象。 2.MyDataSource.java,自定义的数据源实现类。 3.Person.java,数据库表对应的实体类。 4.person.sql,...

    dbutils开源项目用法.doc

    dbutils开源项目用法.doc

    Commons-dbutils1.7 jar包.rar

    query方法后面参数中加一个Connection连接,是在获取不到数据源的情况下,也就是说,QueryRunner的实例化构造函数使用无参的那个,下面我的实现代码就是用的这种方法。 当然还有一种实例化:new QueryRunner(new ...

    DButils使用实例

    主要介绍DButil 的使用方式和类的调用的小实例

    JSP+Servlet+DBUtils

    使用JSP + Servlet + JDBC实现MVC 使用JSP + Servlet + DBUtils实现MVC ...5.使用DBUtils1.6操作数据库,使用原生方法操作数据库 TUserDao使用JDBC TUserDaoEx使用Dbutils 6.扩展方法JsonResult自定义方法

    Xutils中DButils的使用方法

    Xutils 中DButil 的使用方法,在做android 开发时 使用Xutils轻量级框架 如有不到位的地方,请指正。

    DButils 自定义位置存储

    使用 Xutils的DButil 进行配置,数据库外置的一个demo,代码里有详细的调用说明方法。

    Java数据库操作库DButils类的使用方法与实例详解

    主要介绍了JDBC数据库操作库DButils类的使用方法详解,需要的朋友可以参考下

    commons-dbutils-1.7.jar中文-英文对照文档.zip

    # 使用方法: 解压 【***.jar中文文档.zip】,再解压其中的 【***-javadoc-API文档-中文(简体)版.zip】,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作...

    轻量级数据库ORM框架DbUtils

    轻量级数据库ORM框架DbUtils DbUtils介绍 Apache组织下的一个轻量级ORM框架 ...DbUtils ORM工具使用 代码示例: student表中有id,name, age, gender, score, address import com.qfedu.b_studentsys.entity.S

    aka-dbutils:轻量级的数据库访问工具库,包括mybatis的所有功能,但它更简单。 您只需半小时即可掌握所有功能!

    而比mybatis使用起来更简单和高效,你不需要在mapper xml里写烦人的xml,也甚至针对于单对象的增删改查操作,你不需要写任何sql语句,因为aka-dbutils自然就支持对单对象增删改查操作方法。 aka-dbutils你不需要...

    java web项目源码基于servlet+c3p0+dbutils+jsp网上商城+mysql数据库文件.zip

    原创制作,无框架,功能界面美观大气,这个Java Web项目是一个基于servlet、c3p0和dbutils的网上商城系统,使用MySQL数据库作为后端存储。它采用了极简风格的设计,没有使用任何框架,所有代码都是手写的。 该项目...

    commons-dbutils-1.4.jarDBUtils数据库操作所需jar包.rar

    使用方法  1、首先在项目下创建一个文件夹,保存我们的jar包。在项目名上右击,依次点击【New】-->【Floder】,打开新建文件夹窗口  2、输入文件夹名称【lib】,点击【ok】。我们通常在lib文件夹中存放从外部...

    Flask框架使用DBUtils模块连接数据库操作示例

    本文实例讲述了Flask框架使用DBUtils模块连接数据库的操作方法。分享给大家供大家参考,具体如下: Flask连接数据库 数据库连接池: Django使用:django ORM(pymysql/MySqldb) Flask/其他使用:  -原生SQL  -...

    database-dbutils-1.0-SNAPSHOT.jar

    数据库字段加密(现有存量数据) Base64 M4加密 源码地址:https://github.com/hujiande/database.git 使用方法: java -jar xxxxx.jar handle.properties 积分不知道怎么该,请移至github下载源码/。/。/。/

Global site tag (gtag.js) - Google Analytics