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)

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 槟榔不小心吃了怎么办 牙齿掉到肚子里怎么办 牙掉在了肚子里怎么办 牙掉了咽肚子里怎么办 假牙咽到肚子里怎么办 牙咽肚子里了怎么办 假牙吃肚子里了怎么办 陶瓷牙咽肚子里怎么办 做飞机耳朵疼难忍怎么办 肚子痛又拉不出来怎么办 胃胀气打嗝想吐怎么办 胃胀吐酸水恶心怎么办 一岁宝宝胃胀气怎么办 3岁宝宝腹胀呕吐怎么办 胃胀气想吐怎么办快速 胃胀然后吐了怎么办 1岁宝宝胃胀气怎么办 孩子胃胀气还吐怎么办 肚子里进了凉气怎么办 肠胃涨气肚子变大怎么办 感觉肚子胀胀的怎么办 肚子胀撑的难受怎么办 肚子着凉了很疼怎么办 来月经肚子疼怎么办最快的方法 孕妇上大便有血怎么办 做完爱小腹坠痛怎么办 月经不来肚子胀怎么办 月经期间肚子疼的厉害怎么办 大姨吗来了肚子疼该怎么办 孕妇7个月拉肚子怎么办 胃疼肚子也疼怎么办 6个月孕妇肚子疼怎么办 孕妇4个月肚子疼怎么办 孕妇5个月拉肚子怎么办 4个月孕妇拉肚子怎么办 怀孕5个月拉肚子怎么办 肠胃老是胀气很不舒服怎么办 肚子里有气排不出来怎么办 小兔子不吃兔粮怎么办 泰迪肚子一直叫怎么办 狗狗肚子响该怎么办