- 浏览: 566155 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (260)
- J2EE (28)
- database (7)
- Read Book (6)
- 系统日志 (13)
- Tapestry (2)
- 网站开发 (51)
- DDD (4)
- 设计模式 (3)
- Hibernate (33)
- J2SE (18)
- Servlet (9)
- search (6)
- Spring (12)
- Ruby On Rails (2)
- flex (10)
- quartz (3)
- xmpp (0)
- sfs (1)
- struts (17)
- 工作日志 (9)
- IDE (4)
- mina (5)
- 心得 (1)
- 源码分析 (2)
- Tomcat (1)
- 架构 (2)
- 项目部署 (5)
- 项目管理 (0)
- 并发编程 (2)
- linux (2)
最新评论
-
icolorfulday:
dfafaaffaaf
mappedBy跟JoinColumn/JoinTable -
chenas:
我把数据库里面的第一个字段的id 设置为0,好像这问题及没了
Batch update returned unexpected row count from update [0]; actual row count: 0; -
gyl199006:
java.lang.OutOfMemoryError: Per ...
java.lang.OutOfMemoryError: PermGen space -
yisshengyouni:
额,不知道这么多年过去了,楼主解决没有,
解决了分享哈
could not inspect jdbc autocommit mode -
QQ624654852:
...
hibernatetemplate自动事务
网站今日又出现不能访问的原因:
日志如下:
网上说是连接池的原因....
我的C3P0配置
对于以上错误,查阅了类似问题网友的解答:
一:http://www.iteye.com/topic/22160?page=3
对于这个解答,看下我的设置:
因为这里c3p0.max_statements写错了,所以设置无效,看下日志
maxStatements的默认值为0
所以这种解决方法,感觉不行
二.http://yonguo.iteye.com/blog/120574
此方法可能有理,但没有测试.
三.http://www.iteye.com/problems/1082
四.http://blog.sina.com.cn/s/blog_3e7ed9500100abzz.html
根据以上的一些解答,修改配置文件:
对于这种配置也不知道结果会怎么样?
不知道有没有什么测试方法能马上看到效果?
其实hibernate里支持的c3p0参数没有多少.更多的还得在c3p0.property文件中定义
http://www.mchange.com/projects/c3p0/index.html#c3p0_properties
以上的配置文件,在运行后不久,直接出现打不开网页的问题..
日志如下:
[framework] 2008-09-18 18:36:05,109 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -46651078 [Timer-18] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1c17bd4 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
网上说是连接池的原因....
我的C3P0配置
<property name="hibernate.connection.provider_class"> org.hibernate.connection.C3P0ConnectionProvider </property> <property name="c3p0.min_size">20</property> <property name="c3p0.max_size">200</property> <property name="c3p0.time_out">1800</property> <property name="c3p0.max_statement">100</property> <property name="c3p0.validate">true</property>
对于以上错误,查阅了类似问题网友的解答:
一:http://www.iteye.com/topic/22160?page=3
引用
把max_statements设置为0。
c3p0在同时关闭statement和connection的时候,或者关闭他们之间的时间很短的时候,有时候connection并没有被关闭,因为有些preparedstatement还在被cached住。这是c3p0的作者自己说的。
http://forum.hibernate.org/viewtopic.php?t=947246&highlight=apparent+deadlock+c3p0
c3p0在同时关闭statement和connection的时候,或者关闭他们之间的时间很短的时候,有时候connection并没有被关闭,因为有些preparedstatement还在被cached住。这是c3p0的作者自己说的。
http://forum.hibernate.org/viewtopic.php?t=947246&highlight=apparent+deadlock+c3p0
对于这个解答,看下我的设置:
<property name="c3p0.max_statement">100</property>
因为这里c3p0.max_statements写错了,所以设置无效,看下日志
[framework] 2008-09-18 06:32:48,906 - com.mchange.v2.c3p0.C3P0Registry -3257219 [TP-Processor1] INFO com.mchange.v2.c3p0.C3P0Registry - Initializing c3p0-0.9.1 [built 16-January-2007 14:46:42; debug? true; trace: 10] [framework] 2008-09-18 06:32:48,906 - com.mchange.v2.c3p0.management.ActiveManagementCoordinator -3257219 [TP-Processor1] WARN com.mchange.v2.c3p0.management.ActiveManagementCoordinator - A C3P0Registry mbean is already registered. This probably means that an application using c3p0 was undeployed, but not all PooledDataSources were closed prior to undeployment. This may lead to resource leaks over time. Please take care to close all PooledDataSources. [framework] 2008-09-18 06:32:49,015 - com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource -3257328 [TP-Processor1] INFO com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource - Initializing c3p0 pool... com.mchange.v2.c3p0.PoolBackedDataSource@7111383 [ connectionPoolDataSource -> com.mchange.v2.c3p0.WrapperConnectionPoolDataSource@a9b46d3 [ acquireIncrement -> 1, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, debugUnreturnedConnectionStackTraces -> false, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 2rysjs7wvr5h721dikp1v|1880048, idleConnectionTestPeriod -> 0, initialPoolSize -> 20, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 0, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 200, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 20, nestedDataSource ->
maxStatements的默认值为0
所以这种解决方法,感觉不行
二.http://yonguo.iteye.com/blog/120574
引用
更改配置文件里的最大连接数和初始化连接数大小:
因为数据库的连接数是有限的,每次应用启动C3p0都会占用数据库的连接来填充C3p0的连接池,而当数据库的资源被占光时就会因为无法获得共享资源而报死锁。
<property name="maxPoolSize" value="1"/> <property name="initialPoolSize" value="1"/>
因为数据库的连接数是有限的,每次应用启动C3p0都会占用数据库的连接来填充C3p0的连接池,而当数据库的资源被占光时就会因为无法获得共享资源而报死锁。
此方法可能有理,但没有测试.
三.http://www.iteye.com/problems/1082
引用
Basic Pool Configuration
c3p0 Connection pools are very easy to configure via the following basic parameters:
acquireIncrement
initialPoolSize
maxPoolSize
maxIdleTime
minPoolSize
initialPoolSize, minPoolSize, maxPoolSize define the number of Connections that will be pooled. Please ensure that minPoolSize <= maxPoolSize. Unreasonable values of initialPoolSize will be ignored, and minPoolSize will be used instead.
Within the range between minPoolSize and maxPoolSize, the number of Connections in a pool varies according to usage patterns. The number of Connections increases whenever a Connection is requested by a user, no Connections are available, and the pool has not yet reached maxPoolSize in the number of Connections managed. Since Connection acquisition is very slow, it is almost always useful to increase the number of Connections eagerly, in batches, rather than forcing each client to wait for a new Connection to provoke a single acquisition when the load is increasing. acquireIncrement determines how many Connections a c3p0 pool will attempt to acquire when the pool has run out of Connections. (Regardless of acquireIncrement, the pool will never allow maxPoolSize to be exceeded.)
The number of Connections in a pool decreases whenever a pool tests a Connection and finds it to be broken (see Configuring Connection Testing below), or when a Connection is expired by the pool after sitting idle for a period of time, or for being too old (See Managing Pool Size and Connection Age.)
c3p0 Connection pools are very easy to configure via the following basic parameters:
acquireIncrement
initialPoolSize
maxPoolSize
maxIdleTime
minPoolSize
initialPoolSize, minPoolSize, maxPoolSize define the number of Connections that will be pooled. Please ensure that minPoolSize <= maxPoolSize. Unreasonable values of initialPoolSize will be ignored, and minPoolSize will be used instead.
Within the range between minPoolSize and maxPoolSize, the number of Connections in a pool varies according to usage patterns. The number of Connections increases whenever a Connection is requested by a user, no Connections are available, and the pool has not yet reached maxPoolSize in the number of Connections managed. Since Connection acquisition is very slow, it is almost always useful to increase the number of Connections eagerly, in batches, rather than forcing each client to wait for a new Connection to provoke a single acquisition when the load is increasing. acquireIncrement determines how many Connections a c3p0 pool will attempt to acquire when the pool has run out of Connections. (Regardless of acquireIncrement, the pool will never allow maxPoolSize to be exceeded.)
The number of Connections in a pool decreases whenever a pool tests a Connection and finds it to be broken (see Configuring Connection Testing below), or when a Connection is expired by the pool after sitting idle for a period of time, or for being too old (See Managing Pool Size and Connection Age.)
四.http://blog.sina.com.cn/s/blog_3e7ed9500100abzz.html
根据以上的一些解答,修改配置文件:
<property name="hibernate.connection.provider_class"> org.hibernate.connection.C3P0ConnectionProvider </property> <!-- 初始化默认为20 --> <property name="initialPoolSize">1</property> <property name="c3p0.min_size">1</property> <property name="c3p0.max_size">500</property> <property name="c3p0.time_out">1800</property> <!--每隔100秒检测连接是否可正常使用 --> <property name="c3p0.idle_test_period">1000</property> <property name="c3p0.validate">true</property> <property name="hibernate.c3p0.acquire_increment">3</property>
对于这种配置也不知道结果会怎么样?
不知道有没有什么测试方法能马上看到效果?
其实hibernate里支持的c3p0参数没有多少.更多的还得在c3p0.property文件中定义
http://www.mchange.com/projects/c3p0/index.html#c3p0_properties
评论
2 楼
east_java
2008-09-28
[framework] 2008-09-27 05:54:46,750 - com.mchange.v2.c3p0.management.ActiveManagementCoordinator -0 [TP-Processor3] WARN com.mchange.v2.c3p0.management.ActiveManagementCoordinator - A C3P0Registry mbean is already registered. This probably means that an application using c3p0 was undeployed, but not all PooledDataSources were closed prior to undeployment. This may lead to resource leaks over time. Please take care to close all PooledDataSources. [framework] 2008-09-27 05:54:47,687 - org.hibernate.cache.EhCacheProvider -937 [TP-Processor3] WARN org.hibernate.cache.EhCacheProvider - Could not find configuration [useCache]; [framework] 2008-09-27 13:25:41,484 - org.apache.struts.action.RequestProcessor -27483516 [TP-Processor15] WARN org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class java.lang.NullPointerException [framework] 2008-09-27 16:45:27,671 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -39469703 [Timer-0] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetecto[framework] 2008-09-27 16:45:38,171 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -39051421 [Timer-1] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@8772ca -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks! [framework] 2008-09-27 16:45:38,171 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -39051421 [Timer-1] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@8772ca -- APPARENT DEADLOCK!!! Complete Status: Managed Threads: 3 Active Threads: 3 Active Tasks: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@a766f0 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@575786 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@332f00 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2) Pending Tasks: com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask@52cd01 com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1122c6 Pool thread stack traces: Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main] java.lang.Thread.sleep(Native Method) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1805) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main] java.lang.Thread.sleep(Native Method) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1805) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main] java.lang.Thread.sleep(Native Method) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1805) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) hod) com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1805) com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547) [framework] 2008-09-28 00:28:14,468 - org.apache.struts.action.RequestProcessor -67236500 [TP-Processor7] WARN org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class java.lang.NumberFormatException [framework] 2008-09-28 01:30:58,375 - org.apache.struts.action.RequestProcessor -71000407 [TP-Processor14] WARN org.apache.struts.action.RequestProcessor - Unhandled Exception thrown: class java.lang.NullPointerException [framework] 2008-09-28 09:42:08,828 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -100470860 [Timer-0] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1cb365b -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks! [framework] 2008-09-28 09:42:11,843 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -100473875 [Timer-0] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1cb365b -- APPARENT DEADLOCK!!! Complete Status: Managed Threads: 3 Active Threads: 3 Active Tasks: com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@7b4d1 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1) com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1f03698 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2) com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1904275 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0) Pending Tasks: com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1fb4577 com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@18dc83e com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1559dd1 com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1ec1155 Pool thread stack traces: Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main] com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:560) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main] com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:560) Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main] com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:560) [framework] 2008-09-28 10:46:14,828 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -104316860 [Timer-0] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1cb365b -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks! [framework] 2008-09-28 10:46:14,828 - com.mchange.v2.async.ThreadPoolAsynchronousRunner -104316860 [Timer-0] WARN com.mchange.v2.async.ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@1cb365b -- APPARENT DEADLOCK!!! Complete Status: Managed Threads: 3 Active Threads: 0 Active Tasks: Pending Tasks: com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@19f9c21 com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@1c3635d com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@b0ac18 com.mchange.v2.resourcepool.BasicResourcePool$AsyncTestIdleResourceTask@f27ac8 Pool thread stack traces: Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,] Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,] Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,]
1 楼
east_java
2008-09-26
以上的配置文件,在运行后不久,直接出现打不开网页的问题..
发表评论
-
SNS好友动态与微博技术
2010-11-28 12:11 1695最近关注了下SNS好友动态的功能,发现这个功能的技术点其实与微 ... -
tomcat6迁移到tomcat5注意点
2010-07-20 18:03 1853今天发现了tomcat6.0.26的一个bug ,所以把版本 ... -
网站再次升级v2.6
2010-07-14 10:17 830前两天对网站进行了升级, 这次升级的内容: 所有jar包进 ... -
java.io.IOException: Illegal to flush within a custom tag
2010-06-13 19:59 2855在使用oscache之后,老是报出错误: 2009-06 ... -
struts2 token session过期问题
2010-01-17 14:23 2800在使用struts2 token防止重复提交表单的时候,填写表 ... -
博客主题功能实现方法
2009-12-12 17:26 848http://www.java1995.cn/blog/i ... -
又见乱码
2009-12-08 00:36 750乱码可恶,乱码可耻。 其实对于乱码的认识,以及解决方法 ... -
字符集错误引起的问题
2009-11-20 21:31 1000如果字符集设置错误则会出现: 一是常见的乱码 二是com. ... -
Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLIC
2009-11-20 21:21 4706Illegal mix of collations (utf8 ... -
利用google translation api做URL命名的SEO优化
2009-11-09 21:10 1430这种优化的URL叫做slugs url,听说有很多的好处。 ... -
两段代码审视编码能力
2009-11-06 00:03 1199java web开发中,文件上传真是太常要的功能了。 ... -
mysql插入中文
2009-10-22 23:14 2365Struts has detected an unhandl ... -
长文章的分页
2009-10-21 22:09 1142长文章的分页 长文章分页 最大的问题就是会破坏html的完整 ... -
Java1995
2009-10-13 21:20 815http://www.java1995.cn/ -
使用powerdesigner生成数据库的一些问题
2009-10-12 23:33 1127使用powerdesigner生成数据库的一些问题 第一个: ... -
urlrewriter 和 Struts2 整合
2009-09-24 21:15 1701urlrewriter早就开始使用。 但最近使用struts2 ... -
JS禁止中文输入
2009-08-22 23:07 1706for(i=0;i<userName.value.len ... -
Map与数据哪个更好些
2009-08-11 20:13 811在数据库查询的时候,有条件与排序查询的。 List fin ... -
cos的优势在哪儿
2009-08-01 23:27 1325上传文件所使用的方法 ... -
网站新窝
2009-07-28 01:27 912深夜了。。 还是得记录下网站终于换了个好点的空间。。可以自启 ...
相关推荐
c3p0,javaee开发所需要的重要数据库连接池!!!!!!!
网上传言C3P0是因为本身的BUG问题,然而今天我遇到这个问题并解决了,结果发现并不是。通过配置c3p0.maxStatements=0 这种方案只是治标不治本,或者干脆无效。我上传的解决方案肯定能解决这个问题的根本原因。出现...
C3P0源码及实例:C3P0资源文件配置、XML文件配置 C3P0源码及实例:C3P0资源文件配置、XML文件配置
c3p0是款强大的数据库连接池 其完整包要到官网下载 第一次使用学习的同学一定很是头大!因为不知道怎么写xml环境配置文件 所以本人稍微做了整理 里面有样板的xml配置文件 注意:1 配置文件名不能乱改(否则c3p0会找不到...
C3P0 连接池使用详细说明, 非常适合新手
java中c3p0数据库连接池使用方法(c3p0-config.xml+c3p0-0.9.2-pre1.jar+JdbcPool_c3p0.java),里面包含了c3p0-0.9.2-pre1.jar、以及配置文件:c3p0-config.xml、以及一个c3p0数据库连接池工具类(只有简单的两个方法...
c3p0 重新自动连接c3p0 重新自动连接c3p0 重新自动连接c3p0 重新自动连接
赠送jar包:c3p0-0.9.5.2.jar; 赠送原API文档:c3p0-0.9.5.2-javadoc.jar; 赠送源代码:c3p0-0.9.5.2-sources.jar; 赠送Maven依赖信息文件:c3p0-0.9.5.2.pom; 包含翻译后的API文档:c3p0-0.9.5.2-javadoc-API...
C3p0c3p0-0.9.5.5三个jar包使用,匹配mysql8.0等信息,包含mchange-commons-java-0.2.19.jar、c3p0-oracle-thin-extras-0.9.5.5.jar、c3p0-0.9.5.5.jar
C3P0 是最常用的连接池技术!Spring框架,默认支持C3P0连接池技术!
C3P0数据库连接池和jar包,因为jdbc没有保持连接的能力,一旦超过一定时间没有使用(大约几百毫秒),连接就会被自动释放掉。而每次新建连接都需要140毫秒左右的时间,所以耗费时间比较多。若使用C3P0连接池来池化...
c3p0-0.9.2.1.jar&&hibernate-c3p0-4.0.0.Final[1].jar&&mchange-commons-java-0.2.3.4.jar
C3P0实现所需要的jar包: c3p0-0.9.1.2.jar mchange-commons-java-0.2.11.jar mysql-connector-java-5.1.41.jar
c3p0连接池,java jdbc操作
C3P0是一个开源的JDBC连接池...C3P0数据源在项目开发中使用得比较多。导入相关jar包c3p0-0.9.2-pre1.jar、mchange-commons-0.2.jar,如果操作的是Oracle数据库,那么还需要导入c3p0-oracle-thin-extras-0.9.2-pre1.jar
c3p0配置文件
c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包c3p0 jar包
c3p0配置文件
内容概要:c3p0连接池需要jar包.rar以及相关配置文件 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。 适合人群:正在学习...
c3p0各种框架配置参数使用方法以及注释 C3P0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和 jdbc2扩展规范说明的Connection 和Statement 池的DataSources 对象。