`
meiyoudao
  • 浏览: 89712 次
  • 性别: Icon_minigender_1
  • 来自: 冲脉
社区版块
存档分类
最新评论

DBCP使用入门实例

阅读更多
前提条件:
本例使用mysql数据库
数据库名为icdpub. 用户名/密码:icdpub/icdpub
有张表名为:events



package com.meiyoudao.dbcp;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import org.apache.commons.dbcp.ConnectionFactory;
import org.apache.commons.dbcp.DriverManagerConnectionFactory;
import org.apache.commons.dbcp.PoolableConnectionFactory;
import org.apache.commons.dbcp.PoolingDriver;
import org.apache.commons.pool.impl.GenericObjectPool;

public class DbcpTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		GenericObjectPool connectionPool = new GenericObjectPool(null);
		ConnectionFactory connectionFactory = new DriverManagerConnectionFactory("jdbc:mysql://localhost:3306/icdpub", "icdpub", "icdpub");
		PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory,connectionPool,null,null,false,true);
		  try {
			  Class.forName("com.mysql.jdbc.Driver");
			Class.forName("org.apache.commons.dbcp.PoolingDriver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	        PoolingDriver driver = null;
			try {
				driver = (PoolingDriver) DriverManager.getDriver("jdbc:apache:commons:dbcp:");
			} catch (SQLException e) {
				e.printStackTrace();
			}

	        driver.registerPool("example",connectionPool);
	        
	        Connection conn =null;
	        try {
				conn = DriverManager.getConnection("jdbc:apache:commons:dbcp:example");
			} catch (SQLException e) {
				e.printStackTrace();
			}

			System.out.println(conn);
			try {
				ResultSet rs = conn.createStatement().executeQuery("select * from events");
				int numcols = rs.getMetaData().getColumnCount();
	                
				while(rs.next()){
					for(int i=1;i<=numcols;i++) {
	                    System.out.print("\t" + rs.getString(i));
	                }
					System.out.println();
				}
			} catch (SQLException e) {
				e.printStackTrace();
			}
	}

}
分享到:
评论

相关推荐

    Mybits入门实例(实例免费下载!)

    这个入门实例将帮助初学者快速理解MyBatis的核心概念和使用方法。 首先,让我们从MyBatis的安装开始。要使用MyBatis,你需要在项目中引入MyBatis的jar包,这通常通过Maven或Gradle等构建工具完成。添加对应的依赖...

    Spring MVC 入门实例

    7 &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"&gt; 8 ${jdbc.driverClassName}"/&gt; 9 ${jdbc.url}"/&gt; 10 ${jdbc.username}"/&gt; 11 ${jdbc.password}"/&gt; 12 13 --...

    jsp入门实例,连接几种常用数据库

    本资源集“jsp入门实例”聚焦于教授初学者如何利用JSP技术与多种常见数据库进行连接,为你的Web开发之旅提供坚实的基础。 首先,JSP的核心概念在于它将HTML标记与Java代码结合起来,使得开发者可以在同一个文件中...

    JDBC连接数据库,包含DBCP、C3P0连接池,慕课网实例的源码

    Java JDBC基本入门知识,带增删改查例子,支持MySql数据库,包含事务管理,返回数据格式有类对象和List集合格式。有利于初学者理解Java是怎么连接和操作数据库的,也是慕课网中 JDBC之对面女孩走过来的实例源码,亲...

    java最适合初学者从入门到精通实例版1.rar

    2. 数据库连接池:了解C3P0、DBCP、HikariCP等数据库连接池的配置和使用,提高数据库访问性能。 十、Java高级特性 1. 泛型:理解泛型的作用,学习如何在类、接口和方法中使用泛型。 2. 枚举:掌握枚举类型,了解其...

    struts2 hibernate spring整合入门(附实例源码及jarbao--用户名字段的操作)

    commons-dbcp.jar和commons-pool.jar提供了数据库连接池服务,优化数据库资源的使用;slf4j-api-1.5.8.jar是简单日志门面,可以适配多种日志实现;struts2-spring-plugin-2.0.14.jar是Struts2与Spring的整合插件,...

    基于框架的Web开发-使用springJDBC入门.doc

    【基于框架的Web开发-使用spring JDBC入门】 在Web开发中,Spring框架是一个非常流行的工具,它提供了一整套服务,包括但不限于依赖注入、面向切面编程、事务管理等。Spring JDBC是Spring框架的一部分,它简化了...

    JDBC_Java反射技术入门

    - **数据库连接池**:如C3P0、DBCP、HikariCP等,使用反射初始化和管理数据库连接。 - **ORM框架**:Hibernate、MyBatis等,它们利用反射实现了对象与数据库之间的映射,简化数据库操作。 - **AOP(面向切面编程...

    ExtJS_MVC框架的搭建实例

    ### ExtJS_MVC框架的搭建实例 #### 一、引言 随着Web应用的发展,越来越多的企业选择使用MVC架构来构建复杂的应用系统。其中,ExtJS作为一种强大的客户端框架,能够帮助开发者快速构建出美观且功能丰富的用户界面。...

    使用jdbc,使用java和数据库连接,在java代码中实现访问数据库中数据的方法-------最简单入门级(cs.pdf

    以下是一个使用JDBC连接MySQL数据库并执行SQL查询的简要步骤,适合初学者入门: 1. **下载JDBC驱动**: 首先,你需要下载适用于你所用MySQL版本的JDBC驱动。例如,如果你的MySQL版本是5.x,你需要下载对应版本的`...

    iBATIS-SqlMaps2入门代码文档

    此表与`Person`类一对一映射,即每条记录对应一个`Person`对象实例。 #### 三、SQLMap配置文件详解 接下来介绍如何配置SQLMap以连接数据库并执行操作。 ##### 1. 配置文件结构 配置文件采用XML格式编写,用于...

    非常好的SSH开发入门框架

    Struts2是其后续版本,提供了更强大的拦截器和模板技术,但在这个入门框架中,我们可能使用的还是Struts1。 3. Hibernate框架:Hibernate是一个对象关系映射(ORM)工具,它简化了Java应用程序与数据库之间的交互。...

    oracle的入门心得.rar

    13. **数据库连接池**:理解如何配置和使用连接池(如Oracle的DBMS_Pool或第三方的如Apache DBCP)可以优化数据库性能和资源管理。 14. **性能调优**:Oracle提供了各种工具(如SQL*Plus、EXPLAIN PLAN、V$视图)来...

    Java的学习之路,学习JavaEE以及框架时候的一些项目,结合博客和源码,让你受益匪浅,适合Java初学者和刚入门开始学框架者

    [Database-support-package]-数据库需要用到的-c3p0/...[myDbPoolUse]C3P0连接池配置/DBCP连接池配置/Apache的DBUtils框架使用 [myFilterDemoWeb]过滤器Filter学习-设置全站编码与设置页面缓存 [myGzipWeb]全站压缩

    JAVA数据库编程JDBC 与 Java数据库接口JDBC入门基础讲座 与 JDBC API数据库编程实作教材-程序设计-JAVA JDBC全压缩包.rar

    1. **连接池的使用**:如C3P0、Apache DBCP或HikariCP,它们可以有效地管理数据库连接,提高系统性能。 2. **JDBC的最佳实践**:如关闭资源的正确顺序(Resultset -&gt; Statement -&gt; Connection),以及使用try-with-...

    iBATIS教程之入门浅析借鉴.pdf

    2. 执行映射的SQL语句,iBATIS会创建PreparedStatement实例,使用参数对象填充SQL,然后执行SQL并从ResultSet中构建返回的对象。 3. 更新操作返回受影响的行数,查询操作则返回一个对象或对象集合,同样可以是...

    java Spring JdbcTemplate 入门工具

    1. 创建数据源(DataSource):数据源是连接到数据库的桥梁,可以使用Apache Commons DBCP或HikariCP等库来创建。 2. 配置Bean:在Spring的配置文件中,定义一个名为`jdbcTemplate`的Bean,注入上面创建的数据源。 ...

    连接池的入门.docx

    【连接池的入门】 连接池是数据库操作中的一个重要概念,它的出现极大提升...在实际应用中,我们通常会使用成熟的连接池库,如Apache的DBCP或C3P0,这些库提供了更完善的管理和监控功能,确保了连接池的稳定性和性能。

Global site tag (gtag.js) - Google Analytics