c3p0连接池和hibernate应用
来源:互联网 发布:c#连接sqlserver数据库 编辑:程序博客网 时间:2024/06/17 14:59
如果用c3p0作连接池,如果数据库没开启的话,就会报死锁的错误APPARENT DEADLOCK!!! 出错不要紧,恶心的是这种死锁会让你,当你停止TOMCAT的时候报错,TOMCAT停止异常,如下。
Disconnected from server
2008-12-31 9:56:50 org.apache.catalina.startup.Catalina stopServer
严重: Catalina.stop:
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:179)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:394)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:343)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:434)
我用的是intellij(可能eclipse在tomcat方面会智能一点),一旦发生这种情况,想再开TOMCAT就提示端口就被占用了。一开始查了很多怎么释放TOMCAT端口,最后终于知道以后只要IDE出错或者TOMCAT有问题,就先去任务管理器把JAVA或者JAVAW进程就终止掉就好了。
只要开了数据库就好。
具体如下。
2008-12-25 13:25:23,406 INFO [org.hibernate.connection.ConnectionProviderFactory] - <Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider>
2008-12-25 13:25:23,593 INFO [com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource] - <Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, dataSourceName -> 1hge14l7yu4tdy4s43dpv|e99d0f, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> oracle.jdbc.driver.OracleDriver, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, identityToken -> 1hge14l7yu4tdy4s43dpv|e99d0f, idleConnectionTestPeriod -> 0, initialPoolSize -> 5, jdbcUrl -> jdbc:oracle:thin:@127.0.0.1:1521:orcl, lastAcquisitionFailureDefaultUser -> null, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 20, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 20, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 5, numHelperThreads -> 3, numThreadsAwaitingCheckoutDefaultUser -> 0, preferredTestQuery -> null, properties -> {user=******, password=******}, propertyCycle -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, usesTraditionalReflectiveProxies -> false ]>
2008-12-25 13:25:43,484 WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] - <com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@11872a8 -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!>
2008-12-25 13:25:43,484 WARN [com.mchange.v2.async.ThreadPoolAsynchronousRunner] - <com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@11872a8 -- APPARENT DEADLOCK!!! Complete Status:
Managed Threads: 3
Active Threads: 3
Active Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@433545 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@5e6a13 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@862041 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
Pending Tasks:
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1af9d1c
com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@73a35c
Pool thread stack traces:
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-#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-#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)
>
2008-12-25 13:25:57,296 WARN [com.mchange.v2.resourcepool.BasicResourcePool] - <com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@433545 -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt exception: >
java.sql.SQLException: ORA-28000: the account is locked
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:277)
at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOauth(T4CTTIoauthenticate.java:784)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:361)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:135)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
- c3p0连接池和hibernate应用
- Hibernate ORM和c3p0连接池
- hibernate c3p0 连接池配置
- hibernate C3P0连接池配置
- Hibernate配置C3P0连接池
- Hibernate C3P0连接池经验总结
- hibernate配置c3p0 连接池
- hibernate配置c3p0 连接池
- Hibernate C3P0连接池配置
- hibernate整合C3P0连接池
- Hibernate C3P0 连接池case
- hibernate配置c3p0连接池
- hibernate配置C3P0连接池
- Hibernate配置C3P0连接池
- hibernate使用c3p0连接池
- hibernate配置c3p0连接池
- Hibernate使用c3p0连接池
- Hibernate配置c3p0连接池
- 专家访谈:ExtJS技术优化界面的利器
- 程序员六大职业素养
- Samba安装
- 传谷歌美女副总裁梅耶尔将于09年离职
- 开始学习...
- c3p0连接池和hibernate应用
- 第二章 JavaScript显示菜单效果--二维树形目录菜单
- 扩频通信中伪随机序列编解码器的FPGA实现
- ADO Recordset Open Method May Behave Synchronously Even if adAsyncFetch is Specified
- 设置CHtmlView是否允许弹出对话框(脚本异常)
- 仪表系统的嵌入式控制器的开发研究
- 掌握 Dojo 工具包,第 1 部分: Dojo 入门简介
- Say good bye to 2008! and welcome 2009!
- ProcessShellCommand(cmdInfo)函数功能