160707、Tomcat 使用 c3p0连接池
Tomcat 中Jndi是使用Tomcat自带的连接池,由于客户要求,抛弃Tomcat自带的连接池。使用c3p0 。经过几个小时调试,解决方案如下:
环境:Tomcat 6
下面来看Jndi 与 c3p0 结合:
下载地址:http://nchc.dl.sourceforge.net/sourceforge/
c3p0/c3p0c3p0-0.9.0.4.bin.zip
把 c3p0-0.9.0.4.jar 放到应用服务的%tomcat6%/lib目录下。如:
1.在context.xml中<Context></Context>内加<Resource />,完整的示例:
- <?xml version= '1.0' encoding= 'utf-8' ?>
- <Context>
- <WatchedResource>WEB-INF/web.xml</WatchedResource>
- <!-- 下面注释部分为使用jndi+tomcat自带的连接池-->
- <!--<Resource name="jdbc/ctitc" type= "javax.sql.DataSource"
- username="business" password= "ctitc" driverClassName="oracle.jdbc.driver.OracleDriver" url= "jdbc:oracle:thin:@127.0.0.1:1521:FJTDC"
- maxIdle="30" maxWait= "5000" maxActive= "100" />
- -->
- <!-- 下面注释部分为使用jndi+c3p0-->
- <Resource name="jdbc/ctitc"
- type="com.mchange.v2.c3p0.ComboPooledDataSource"
- maxPoolSize="50" minPoolSize= "2" acquireIncrement= "2"
- factory="org.apache.naming.factory.BeanFactory"
- user="user" password= ""
- driverClass="oracle.jdbc.driver.OracleDriver"
- jdbcUrl="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"
- />
- </Context>
- <?xml version='1.0' encoding='utf-8'?>
- <Context>
- <WatchedResource>WEB-INF/web.xml</WatchedResource>
- <!-- 下面注释部分为使用jndi+tomcat自带的连接池-->
- <!--<Resource name="jdbc/ctitc" type="javax.sql.DataSource"
- username="business" password="ctitc" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:FJTDC"
- maxIdle="30" maxWait="5000" maxActive="100"/>
- -->
- <!-- 下面注释部分为使用jndi+c3p0-->
- <Resource name="jdbc/ctitc"
- type="com.mchange.v2.c3p0.ComboPooledDataSource"
- maxPoolSize="50" minPoolSize="2" acquireIncrement="2"
- factory="org.apache.naming.factory.BeanFactory"
- user="user" password=""
- driverClass="oracle.jdbc.driver.OracleDriver"
- jdbcUrl="jdbc:oracle:thin:@127.0.0.1:1521:ORCL"
- />
- </Context>
2.在web.xml添加:
- <resource-ref>
- <description>DB Connection</description>
- <res-ref-name>jdbc/ctitc</res-ref-name>
- <res-type>javax.sql.DataSource</res-type>
- <res-auth>Container</res-auth>
- </resource-ref>
- <resource-ref>
- <description>DB Connection</description>
- <res-ref-name>jdbc/ctitc</res-ref-name>
- <res-type>javax.sql.DataSource</res-type>
- <res-auth>Container</res-auth>
- </resource-ref>
160707、Tomcat 使用 c3p0连接池的更多相关文章
- 配置tomcat全局c3p0连接池
由于项目中多个应用访问同一个数据库,并部署在同一个tomcat下面,所以没必要每个应用都配置连接池信息,这样可能导致数据库的资源分布不均,所以这种情况完全可以配置一个tomcat的全局连接池,所涉及应 ...
- tomcat下c3p0连接池配置问题
一.首先如果要使用这个连接池,就需要导入c3p0-0.9.2-pre1.jar架包和支持架包mchange-commons-0.2.jar, 我这里测试使用的是msql数据库 当然也需要导入mysql ...
- c3p0、dbcp、tomcat jdbc pool 连接池配置简介及常用数据库的driverClass和驱动包
[-] DBCP连接池配置 dbcp jar包 c3p0连接池配置 c3p0 jar包 jdbc-pool连接池配置 jdbc-pool jar包 常用数据库的driverClass和jdbcUrl ...
- DBCP,C3P0与Tomcat jdbc pool 连接池的比较
hibernate开发组推荐使用c3p0; spring开发组推荐使用dbcp(dbcp连接池有weblogic连接池同样的问题,就是强行关闭连接或数据库重启后,无法reconnect,告诉连接被重置 ...
- C3P0连接池问题,APPARENT DEADLOCK!!! Creating emergency..... [问题点数:20分,结帖人lovekong]
采用c3p0连接池,每次调试程序,第一次访问时(Tomcat服务器重启后再访问)都会出现以下错误,然后连接库需要很长时间,最终是可以连上的,之后再访问就没问题了,请高手们会诊一下,希望能帮小弟解决此问 ...
- 开源数据库连接池之Tomcat内置连接池
本篇介绍几种开源数据库连接池,同时重点讲述如何使用Tomcat服务器内置的数据库连接池. 之前的博客已经重点讲述了使用数据库连接池的好处,即是将多次创建连接转变为一次创建而使用长连接模式.这样能减少数 ...
- JNDI配置c3p0连接池
JNDI是什么呢? 就是java命名和文件夹接口.是SUN公司提供的一种标准的Java命名系统接口. 不好理解?简单说呢.他就是一个资源,放在tomcat里面的一个资源,今天我们就把数据库连接池放到t ...
- c3p0连接池]
<c3p0-config> <!-- 默认配置 --> <default-config> <property name="jdbcUrl" ...
- c3p0连接池获得的Connection执行close方法后是否真的销毁Connection对象?
问题描述: jfinal做的api系统中,在正常调用接口一段时间后,突然再调用接口的时候,该请求无响应api系统后台也无错误信息 (就是刚开始接口调用是正常的,突然就无响应了) 于是啊,就开始找错误. ...
随机推荐
- 使用httpModules做一些事
httpmodules是http管道处理程序 可以重写接口进行一些在请求到达api接口前做全局处理 这是一个过滤关键词的例子 using System; using System.Collection ...
- 征服 Ajax 应用程序的安全威胁
Ajax 构建于动态 HTML(DHTML)技术之上,其中包括如下这些最常见的技术: JavaScript :JavaScript 是一种脚本语言,在客户端 Web 应用程序中经常使用. 文档对象模型 ...
- python3安装scrapy问题解决
scrapy py3.5安装 pip install scrapy 直接安装失败 第一个错误 building 'lxml.etree' extension 使用 pip install lxml 安 ...
- Android-->Realm(数据库ORM)使用体验,lambda表达式
Realm,为移动设备而生.替代 SQLite 和 Core Data. 非常庆幸,官方帮助文档有中文: https://realm.io/cn/docs/java/latest/ 尽管眼下最新的版本 ...
- swift -变量的定义与使用
使⽤用let来声明常量,使⽤用var来声明变量. ⼀一个常量的值在编译时并不须要获取,可是你仅仅能为它赋值⼀一次.也就是说你能够⽤用常量来表⽰示这样⼀一个值:你仅仅须要决定⼀一次,可是须要使⽤用非常多 ...
- 音频采样中left-or right-justified(左对齐,右对齐), I2S时钟关系
音频采样中left-or right-justified(左对齐,右对齐), I2S时钟关系 原创 2014年02月11日 13:56:51 4951 0 0 刚刚过完春节,受假期综合症影响脑袋有点发 ...
- JavaScript No Overloading 函数无重载之说
在ECMAScript语言中,函数名字仅仅只是是一个指针(能够觉得是引用),以下的代码: "use strict"; function sum(a,b){ return a+b; ...
- php socket 模型及效率问题
// 创建套接字 socket_create(); // 绑定 socket_bind(); // 监听 socket_listen(); // 主体, 死循环 while(true){ // sel ...
- vim插件管理器的安装和配置-windows
# vim插件管理器的安装和配置-windows ### 前言------------------------------ vim做一框功能强大的编辑器,扩展功能令人称奇,插件机制非常灵活- 本篇推荐 ...
- iOS开发之-收集的不常用却实用的小方法和技巧
原文链接:http://blog.5ibc.net/p/90386.html 1.颜色转变成图片 - (UIImage *)createImageWithColor:(UIColor *)color ...