問題:Could not get JDBC Connection; nested exception is java.sql.SQLException: com.mchange.v2.c3p0.ComboPooledDataSource [ java.beans.IntrospectionException: java.lang.reflect.InvocationTargetException [numThreadsAwaitingCheckoutDefaultUser] ] has been closed() -- you can no longer use it 異常
原因:由於連接池設置breakAfterAcquireFailure參數為true,出現服務網絡不穩定時導致
解決方法:breakAfterAcquireFailure :true表示pool向數據庫請求連接失敗后標記整個pool為block並close,就算后端數據庫恢復正常也不進行重連,客戶端對pool的請求都拒絕掉。false表示不會標記 pool為block,新的請求都會嘗試去數據庫請求connection。默認為false。因此,如果想讓數據庫和網絡故障恢復之后,pool能繼續請求正常資源必須把此項配置設為false