소스 검색

优化数据源释放

zhou-hao 7 년 전
부모
커밋
7fa263a40f
1개의 변경된 파일10개의 추가작업 그리고 1개의 파일을 삭제
  1. 10 1
      hsweb-datasource/hsweb-datasource-api/src/main/java/org/hswebframework/web/datasource/DefaultJdbcExecutor.java

+ 10 - 1
hsweb-datasource/hsweb-datasource-api/src/main/java/org/hswebframework/web/datasource/DefaultJdbcExecutor.java

@@ -38,7 +38,16 @@ public class DefaultJdbcExecutor extends AbstractJdbcSqlExecutor {
         if (logger.isDebugEnabled()) {
             logger.debug("Releasing DataSource ({}) JDBC Connection [{}]", getDatasourceId(), connection);
         }
-        DataSourceUtils.releaseConnection(connection, DataSourceHolder.currentDataSource().getNative());
+        try {
+            DataSourceUtils.doReleaseConnection(connection, DataSourceHolder.currentDataSource().getNative());
+        } catch (SQLException e) {
+            logger.error(e.getMessage(), e);
+            try {
+                connection.close();
+            } catch (Exception e2) {
+                logger.error(e2.getMessage(), e2);
+            }
+        }
     }
 
     @Override