`
Rainbow702
  • 浏览: 1065128 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类

Tomcat dbcp 数据库连接池 的配置及使用

阅读更多

环境:

① Tomcat 5.5.27

② postgresql8.4

 

1)添加jar包
tomcat中 TOMCAT_HOME/lib 下是公用jar包

dbcp需要3个jar包:Jakarta-Commons DBCP,Jakarta-Commons Collections,Jakarta-Commons Pool,
但是tomcat已经用1个naming-factory-dbcp.jar包含了这3个jar包,该包在 TOMCAT_HOME/lib 下,因此在tomcat下不需要再添加dbcp相关的3个包;但是,postgresql-8.4-703.jdbc4.jar 这个包是必须要拷贝到 TOMCAT_HOME/lib 下,即使你把这个包已经放在了你的工程下面的WEB-INF路径。

 

2)添加数据源
在 TOMCAT_HOME/conf/context.xml 中 添加数据源:
   

<Resource
      name="jdbc/XXXXXXXXXX"
      type="javax.sql.DataSource"
      driverClassName="org.postgresql.Driver"
      username="XXXXXXXXX"
      password="XXXXXXXXX"
      maxActive="100"
      maxIdle="40"
      minIdle="10"
      maxWait="5000"
      defaultAutoCommit="false"
      url="jdbc:postgresql://192.168.1.1:5432/XXXXXXXXXX"/>

 上面,打“XXXXXXXXXX”是需要根据自己项目的情况进行变更的,URL中的IP地址也是需要变更的,不能照搬啊。

 

在网上看教程的时候,一般都说还有下面这个步骤:

3)在web.xml 中引用数据源,即下面的“resource-ref”部分

 

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-app_2_4.xsd"
    version="2.4">

    <display-name>JNDI Test</display-name>

    
    <description>A test for using of JNDI</description>
	<resource-ref>
		 <description>DB Connection</description>
		 <res-ref-name>jdbc/test</res-ref-name>
		 <res-type>javax.sql.DataSource</res-type>
		 <res-auth>Container</res-auth>
	</resource-ref>
    <welcome-file-list>
      <welcome-file>index.jsp</welcome-file>
      <welcome-file>index.html</welcome-file>
    </welcome-file-list>

</web-app>

 

但是,经过我实验,我发现这步不是必须的,大家根据自己情况进行设定吧。

 

3) 获取连接,下面是截取的我的测试类的部分代码

	/**
	 * connection pool
	 */
	private static DataSource ds;

	/**
	 * the instance of this util class self
	 */
	private static DBUtil instance;

	/**
	 * constructor
	 * 
	 * @throws Exception
	 */
	private DBUtil() throws Exception {
		try {
			// get the data source from the jndi context
			ds = (DataSource) ((Context) new InitialContext()
					.lookup("java:comp/env")).lookup("jdbc/XXXXXXXXXX");
		} catch (NamingException e) {
			throw e;
		}
	}

	public synchronized static DBUtil getInstance() throws Exception {
		if (instance == null) {
			instance = new DBUtil();
		}
		return instance;
	}

	/**
	 * get a database connection
	 * 
	 * @return a database connection
	 * @throws Exception database exception, if a database option error happens
	 */
	public Connection getConnection() throws Exception {
		try {
			// get a database connection from the connection pool
			Connection conn = ds.getConnection();
			return conn;
		} catch (SQLException e) {
			throw e;
		}
	}

 

获得数据库连接之后,你想干什么就干什么吧。

 

 

分享到:
评论
1 楼 di1984HIT 2015-03-30  
不错,学习了。

相关推荐

    DBCP数据库连接池1.2jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要3个包:commons-dbcp.jar,commons-pool.jar,commons-collections.jar由于建立...

    Tomcat 7-dbcp配置数据库连接池详解

    Tomcat 7-dbcp配置数据库连接池详解 原理  关于连接池,大家都晓得用来限定对数据库的连接。基本的原理是预先在缓冲池中放入一定的空闲连接,当程序需要和数据库来交互时,不是直接新建数据库连接而是在连接池中...

    java中DBCP数据库连接池使用方法以及jjdbc所需的ar包(commons-pool.jar+commons-dbcp-1.2.2.jar)

    java中DBCP数据库连接池使用方法以及代码文件:(dbcpconfig.properties+JdbcPool_dbcp.java)以及jjdbc所需的ar包(commons-pool.jar+commons-dbcp-1.2.2.jar)

    tomcat_连接池数据库密码加密解密方法

    详细讲解tomcat 连接池数据库解密加密方法以及过程。

    基于DBCP/c3p0/Tomcat的数据库连接池的demo

    基于DBCP,c3p和Tomcat提供的数据库连接池的支持,分别实现了一个demo

    DBCP( Database Connection Pool )数据库连接池

    DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP; 使用连接池的第一项工作就是导包,这里需要的两个jar包分别是: commons-dbcp-1.4....

    数据库连接池dbcp

    数据库连接池是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。在整合开发框架时会用得到

    DBCP资源池使用jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。 单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,common-collections.jar 由于建立...

    DBCP连接池所需完整架包(全)

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗...

    用dbcp连接池,mysql数据库,在tomcat服务器下,通过hibernate配置jndi数据源.doc

    用dbcp连接池,mysql数据库,在tomcat服务器下,通过hibernate配置jndi数据源. 我想此标题已经比较明确了。 在此说明一点,hibernate开发小组不推荐在hibernate下使用dbcp,如果一定要的话,请慎重考虑。

    常用开源数据库连接池 文档和源码及jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,common-collections.jar由于建立...

    tomcat6.0+oracle数据库连接池

    详尽的数据库连接池配置方法,主要是利用tomcat6.0+oracle,利用第三方dbcp-jar包,可以取得当前连接数。

    java连接池的配置

    java连接池的配置 里面有C3P0连接池在tomcat中的详细配置 Java反射机制总结,tomcat下配置数据库连接池DBCP、C3P0、Proxool 总结spring下配置dbcp,c3p0,proxool数据源链接池

    dbcp3个相关jar包

    DBCP(DataBase connection pool),数据库连接池。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar,commons-pool.jar由于建立数据库连接是一个非常耗时耗...

    使用连接池技术时的配置

    Tomcat+mysql+eclipse数据库连接池的配置

    数据库连接池在web开发中的应用

    基于tomcat的dbcp使用 博文链接:https://wuxw920.iteye.com/blog/1045562

    commons-dbcp2-2.9.0-bin.zip

    DBCP的工作原理是,程序首先会初始化相应的数据库连接池,以供程序访问,当某个操作需要访问数据库时,程序会首先在连接池中取得空闲连接,如没有空闲连接在创建,用完之后归还连接池,这样达到了连接的重利用,不用...

    常用四大连接池集合

    常用四大连接池集合c3p0,dbcp,druid,HikariCP,内有四大连接池的使用方法,配置方法,以及它们之间的比较和介绍,和spring继承等配置方法。 c3p0 太古老,代码及其复杂,不利于维护。貌似都比它强。 dbcp 是 ...

    关于数据库连接池Druid使用说明

    根据综合性能,可靠性,稳定性,扩展性,易用性等因素替换成最优的数据库连接池。 Druid:druid-1.0.29 数据库 Mysql.5.6.17 替换目标:替换掉C3P0,用druid来替换 替换原因: 1、性能方面 hikariCP&gt;druid&gt;tomcat-...

Global site tag (gtag.js) - Google Analytics