diff --git a/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledConnection.java b/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledConnection.java index ccefc9666..0dc4d9c8a 100644 --- a/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledConnection.java +++ b/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledConnection.java @@ -35,6 +35,9 @@ import java.util.Properties; public class PooledConnection extends ConnectionWrapper { private final PooledDataSource dataSource; + /** + * 仅用于记录连接在池中的状态,如归还到池中为close状态,从池中拿出需调用{@link #open()}变为可用状态 + */ private boolean isClosed = false; /** @@ -99,6 +102,17 @@ public class PooledConnection extends ConnectionWrapper { return this.isClosed; } + /** + * 打开连接
+ * 仅用于从连接池中拿出时调用,使链接变为可用。 + * + * @return this + */ + PooledConnection open() { + this.isClosed = false; + return this; + } + /** * 销毁连接,即彻底关闭并丢弃连接 */ diff --git a/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledDataSource.java b/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledDataSource.java index bcaf2b427..792665e86 100644 --- a/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledDataSource.java +++ b/hutool-db/src/main/java/cn/hutool/v7/db/ds/pooled/PooledDataSource.java @@ -86,7 +86,7 @@ public class PooledDataSource extends AbstractDataSource { @Override public PooledConnection getConnection() throws SQLException { - return connPool.borrowObject(); + return connPool.borrowObject().open(); } @Override