diff --git a/hutool-db/pom.xml b/hutool-db/pom.xml index 31c1c263e..bab350310 100755 --- a/hutool-db/pom.xml +++ b/hutool-db/pom.xml @@ -35,7 +35,7 @@ 2.9.0 10.0.27 - 1.2.17 + 1.2.21 4.0.3 3.43.0.0 diff --git a/hutool-db/src/main/java/org/dromara/hutool/db/ds/druid/DruidDSFactory.java b/hutool-db/src/main/java/org/dromara/hutool/db/ds/druid/DruidDSFactory.java index 7e876a86e..4a75d482b 100644 --- a/hutool-db/src/main/java/org/dromara/hutool/db/ds/druid/DruidDSFactory.java +++ b/hutool-db/src/main/java/org/dromara/hutool/db/ds/druid/DruidDSFactory.java @@ -74,6 +74,38 @@ public class DruidDSFactory implements DSFactory { ds.setBreakAfterAcquireFailure(druidProps.getBool(breakAfterAcquireFailureKey)); } + // issue#I8STFC 补充 + // validationQueryTimeout + final String validationQueryTimeout = "druid.validationQueryTimeout"; + if(druidProps.containsKey(validationQueryTimeout)){ + ds.setValidationQueryTimeout(druidProps.getInt(validationQueryTimeout)); + } + // queryTimeout + final String queryTimeout = "druid.queryTimeout"; + if(druidProps.containsKey(queryTimeout)){ + ds.setQueryTimeout(druidProps.getInt(queryTimeout)); + } + // connectTimeout + final String connectTimeout = "druid.connectTimeout"; + if(druidProps.containsKey(connectTimeout)){ + ds.setConnectTimeout(druidProps.getInt(connectTimeout)); + } + // socketTimeout + final String socketTimeout = "druid.socketTimeout"; + if(druidProps.containsKey(socketTimeout)){ + ds.setSocketTimeout(druidProps.getInt(socketTimeout)); + } + // transactionQueryTimeout + final String transactionQueryTimeout = "druid.transactionQueryTimeout"; + if(druidProps.containsKey(transactionQueryTimeout)){ + ds.setTransactionQueryTimeout(druidProps.getInt(transactionQueryTimeout)); + } + // loginTimeout + final String loginTimeout = "druid.loginTimeout"; + if(druidProps.containsKey(loginTimeout)){ + ds.setLoginTimeout(druidProps.getInt(loginTimeout)); + } + // 检查关联配置,在用户未设置某项配置时,设置默认值 if (null == ds.getValidationQuery()) { // 在validationQuery未设置的情况下,以下三项设置都将无效