`
dupengtao
  • 浏览: 32884 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

利用dbutils框架简化jdbc开发

    博客分类:
  • jdbc
阅读更多

1.首先要导入要用的jar包

 

commons-dbcp-1.2.2.jar

commons-dbutils-1.2.jar

commons-pool.jar

mysql-connector-java-5.0.8-bin.jar

 

 

2.修改配置文件

参考模板:

 

#连接设置
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/day17
username=root
password=root

#<!-- 初始化连接 -->
initialSize=10

#最大连接数量
maxActive=50

#<!-- 最大空闲连接 -->
maxIdle=20

#<!-- 最小空闲连接 -->
minIdle=5

#<!-- 超时等待时间以毫秒为单位 6000毫秒/1000等于60秒 -->
maxWait=60000


#JDBC驱动建立连接时附带的连接属性属性的格式必须为这样:[属性名=property;] 
#注意:"user" 与 "password" 两个属性会被明确地传递,因此这里不需要包含他们。
connectionProperties=useUnicode=true;characterEncoding=utf8

#指定由连接池所创建的连接的自动提交(auto-commit)状态。
defaultAutoCommit=true

#driver default 指定由连接池所创建的连接的只读(read-only)状态。
#如果没有设置该值,则“setReadOnly”方法将不被调用。(某些驱动并不支持只读模式,如:Informix)
defaultReadOnly=

#driver default 指定由连接池所创建的连接的事务级别(TransactionIsolation)。
#可用值为下列之一:(详情可见javadoc。)NONE,READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE
defaultTransactionIsolation=READ_COMMITTED

 

 

 

3.java 编写utils工具类

public class JdbcUtils {

	private static DataSource datesourse;
	private static Properties properties = new Properties();
	static {
		try {
			properties.load(JdbcUtils.class.getClassLoader()
					.getResourceAsStream("dbcpconfig.properties"));
			BasicDataSourceFactory factory = new BasicDataSourceFactory();
			datesourse = factory.createDataSource(properties);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}


	public static DataSource getDataSource() {
		return datesourse;
	}

	

}
 

4.调用demo

 

 

public class Demo1 {

	/*
	 create database day17;
	 use day17;
	 create table users(
		id int primary key,
		name varchar(40),
		password varchar(40),
		email varchar(60),
		birthday date
	);
	 */
	
	//使用dbutils完成数据库的crud
	
	@Test
	public void insert() throws SQLException{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql = "insert into users(id,name,password,email,birthday) values(?,?,?,?,?)";
		Object params[] = {2,"bbb","123","aa@sina.com",new Date()};
		runner.update(sql, params);
	}
	
	@Test
	public void update() throws SQLException{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql = "update users set email=? where id=?";
		Object params[] = {"aaaaaa@sina.com",1};
		runner.update(sql, params);
	}
	
	@Test
	public void delete() throws SQLException{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql = "delete from users where id=?";
		runner.update(sql, 1);
	}
	
	@Test
	public void find() throws SQLException{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql = "select * from users where id=?";
		User user = (User) runner.query(sql, 1, new BeanHandler(User.class));
		System.out.println(user.getEmail());
	}
	
	
	@Test
	public void getAll() throws Exception{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql = "select * from users";
		List list = (List) runner.query(sql, new BeanListHandler(User.class));
		System.out.println(list);
	}
	
	@Test
	public void batch() throws SQLException{
		QueryRunner runner = new QueryRunner(JdbcUtils.getDataSource());
		String sql =  "insert into users(id,name,password,email,birthday) values(?,?,?,?,?)";
		Object params[][] = new Object[3][5];
		for(int i=0;i<params.length;i++){  //3
			params[i] = new Object[]{i+1,"aa"+i,"123",i + "@sina.com",new Date()};
		}
		runner.batch(sql, params);
	}
}
 

 

1
0
分享到:
评论
1 楼 hyjasonlee 2013-08-18  
birthday 为Date 能取数据出来吗?我用sqlite一直是空的

相关推荐

    dbutils框架

    **dbutils框架详解** Apache DBUtils(Database Utilities)是一个基于Java的开源数据库操作框架,它由Apache软件基金会提供,旨在简化数据库操作,提高开发效率。DBUtils的核心理念是通过提供一组实用工具类来减少...

    DBUtils框架jar包

    DBUtils框架是一个基于Java的数据库操作工具包,它由Apache软件基金会开发并维护。这个框架的设计目的是为了简化Java程序员在处理数据库操作时的工作,尤其是在执行SQL语句、管理数据库连接和处理结果集等方面。...

    Apache Dbutils JDBC 框架demo代码

    commons-dbutils是Apache组织提供的一个开源JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。因此dbutils成为很多不喜欢hibernate的公司...

    DBUtils框架ResultSetHandler接口使用

    DBUtils 框架还提供了 DbUtils 类,DbUtils 类提供了如关闭连接、装载 JDBC 驱动程序等常规工作的工具类,里面的所有方法都是静态的。主要方法包括: * public static void close(...) throws java.sql....

    开发类库DButils

    DButils 是一个由 Apache Software Foundation 开发的 Java 类库,用于简化数据库操作。它作为 JDBC(Java Database Connectivity)的一个辅助工具,提供了更加简洁、健壮的API,减轻了开发人员处理数据库连接、执行...

    commons-dbutils.jar.rar

    DBUtils通过提供一套高级的JDBC工具,使得开发者可以更方便地利用JDBC功能,而无需关注底层的资源管理和异常处理。 3. **DBUtils的主要特性** - **QueryRunner**: 这是DBUtils的核心类,用于执行SQL查询和更新操作...

    commons-dbutils-1.6.jar

    《Apache Commons DBUtils详解》 Apache Commons ...此外,随着Java技术的发展,现代框架如Spring JDBC和MyBatis等提供了更为全面的数据库操作支持,但DBUtils因其轻量级和易用性,仍然在很多项目中被广泛使用。

    apache dbutils 框架

    5. **异常处理**:DBUtils对常见的JDBC异常进行了封装,统一为DBException,简化了异常处理逻辑。 6. **资源管理**:DBUtils自动管理数据库连接和Statement对象的生命周期,避免了资源泄露的问题。 7. **连接池...

    Apache Dbutils +springmvc 框架demo代码

    commons-dbutils是Apache组织提供的一个开源JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。 springmvc与springmvc 整合demo

    DBUtils组件

    DBUtils组件是Apache Commons项目中的一个实用工具库,专门用于简化Java...对于初学者而言,学习和掌握DBUtils能够提升数据库操作的技能,对于经验丰富的开发者,DBUtils可以作为一个高效且稳定的数据库访问基础框架。

    commons-dbutils-1.7

    Apache Commons DbUtils是Java开发中的一个实用工具库,专门针对JDBC...总的来说,Apache Commons DbUtils是Java开发中一个非常实用的工具,它通过简化JDBC编程,让开发者能够专注于业务逻辑,而不是数据库交互的细节。

    dbutils-1.6

    **dbutils-1.6** 是一个用于Java编程的实用工具库,主要目的是简化数据库连接和数据操作。这个框架在JDBC(Java Database Connectivity)的基础上进行了封装,为开发者提供了更简洁、高效的API,使得处理数据库操作...

    apache dbutils中文说明

    DBUtils的主要目标是简化JDBC编程,减少代码重复,并帮助避免常见的JDBC编程错误。它不是一个完整的ORM(对象关系映射)框架,但作为一个轻量级的工具,它在处理数据库交互时非常实用。 DBUtils的核心类包括`org....

    commons-dbutils-1.4 bin+src

    - **与ORM框架的对比**:虽然DBUtils简化了JDBC编程,但它仍然基于JDBC,而ORM框架如Hibernate、MyBatis则进一步抽象了数据库操作,提供了对象关系映射的功能。DBUtils更适合对JDBC有深入理解和需要高效执行简单SQL...

    DbUtils-1.7.zip

    - 教学示例,展示如何简化JDBC操作。 - 数据库脚本执行,如批量插入、更新数据。 6. **与其他工具比较**: - 相比于Hibernate和MyBatis等ORM框架,DbUtils更轻量,适合对性能要求较高的场景。 - 对比JDBC,...

    commons-dbutils-1.7-src.zip

    DBUtils的核心设计理念是简化JDBC编程,避免常见的错误,如资源管理(如Statement和ResultSet的关闭)以及异常处理。以下是一些关键知识点: 1. **资源管理**:DBUtils通过使用Try-Catch-Finally结构来确保数据库...

    jdbc工具类-DBUtils1.6版jar包-正式版下载

    Commons DbUtils作为一款轻量级的JDBC封装工具,在不影响性能的前提下极大地简化了数据库操作的复杂度,提升了开发效率。无论是对于初学者还是有经验的开发者来说,都是一个值得学习和使用的优秀工具。通过本文的...

    dbutils-1.7 bin和src

    Apache Commons DBUtils是一个基于Java的开源工具库,它是针对JDBC(Java Database Connectivity)的一个简化操作的框架。DBUtils的目标是使JDBC编程变得更简单、更安全,避免了常见的错误,如资源泄漏。它通过提供...

    dbutils

    `dbutils` 是一个开源的Java库,主要设计用于简化数据库操作,它不是数据访问对象(DAO)框架,也不是像Hibernate那样的对象关系映射(ORM)工具。`dbutils` 提供了一些实用功能,使得在Java程序中进行数据库交互变...

    commons_dbutils1.4_itmop.com_JDBC_开源工具类库.zip

    Apache Commons DBUtils是一个Java库,它简化了JDBC(Java Database Connectivity)的使用,为开发者提供了更方便、更安全的数据库操作方式。这个压缩包文件"commons_dbutils1.4_itmop.com_JDBC_开源工具类库.zip...

Global site tag (gtag.js) - Google Analytics