From 9b7804511e9db96f9f9aed5811a5f15d9f210c21 Mon Sep 17 00:00:00 2001 From: diantu Date: Mon, 6 Feb 2023 16:11:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D:=E6=96=B0=E5=A2=9E=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=BA=90=E6=97=B6,=E5=8F=82=E6=95=B0=E5=A1=AB?= =?UTF-8?q?=E5=86=99=E9=94=99=E8=AF=AF,druid=E8=BF=9E=E6=8E=A5=E6=B1=A0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=9C=AA=E8=83=BD=E6=AD=A3=E7=A1=AE=E5=85=B3?= =?UTF-8?q?=E9=97=AD,=E5=AF=BC=E8=87=B4=E6=8E=A7=E5=88=B6=E5=8F=B0?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E8=BE=93=E5=87=BA=E9=94=99=E8=AF=AF=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../doc/data/utils/DruidDataSourceUtil.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/zyplayer-doc-data/src/main/java/com/zyplayer/doc/data/utils/DruidDataSourceUtil.java b/zyplayer-doc-data/src/main/java/com/zyplayer/doc/data/utils/DruidDataSourceUtil.java index 840f9897..819ad63c 100644 --- a/zyplayer-doc-data/src/main/java/com/zyplayer/doc/data/utils/DruidDataSourceUtil.java +++ b/zyplayer-doc-data/src/main/java/com/zyplayer/doc/data/utils/DruidDataSourceUtil.java @@ -14,9 +14,9 @@ import java.util.concurrent.atomic.AtomicLong; * @since 2020-04-08 */ public class DruidDataSourceUtil { - + private static AtomicLong nameId = new AtomicLong(0); - + public static DruidDataSource createDataSource(String driverClassName, String url, String username, String password, boolean breakAfterAcquireFailure) throws Exception { // 数据源配置 DruidDataSource dataSource = new DruidDataSource(); @@ -43,11 +43,18 @@ public class DruidDataSourceUtil { if (Objects.equals("oracle.jdbc.driver.OracleDriver", driverClassName)) { dataSource.setValidationQuery("select 1 from dual"); } - DruidPooledConnection connection = dataSource.getConnection(3000); - if (connection == null) { + try { + DruidPooledConnection connection = dataSource.getConnection(3000); + if (connection == null) { + dataSource.close(); + throw new ConfirmException("尝试获取该数据源连接失败:" + url); + } + connection.recycle(); + }catch (Exception e){ + dataSource.close(); throw new ConfirmException("尝试获取该数据源连接失败:" + url); } - connection.recycle(); + return dataSource; } }