From 15c81886ac09887c1bdffb50da38bb8a4b9871b7 Mon Sep 17 00:00:00 2001 From: Raod <1130305001@qq.com> Date: Mon, 19 Jul 2021 10:44:48 +0800 Subject: [PATCH] datasource2 --- .../pool/connection/IPooledConnection.java | 56 --- .../pool/connection/PooledConnection.java | 457 ------------------ 2 files changed, 513 deletions(-) delete mode 100644 report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/IPooledConnection.java delete mode 100644 report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/PooledConnection.java diff --git a/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/IPooledConnection.java b/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/IPooledConnection.java deleted file mode 100644 index 4c746f88..00000000 --- a/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/IPooledConnection.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.anjiplus.template.gaea.business.modules.dataSource.pool.connection; - -import com.anjiplus.template.gaea.business.modules.dataSource.pool.api.IPooledDataSourceConfig; - -import java.sql.Connection; - -/** - * 池化的连接池 - * @since 1.1.0 - */ -public interface IPooledConnection extends Connection { - - - /** - * 是否繁忙 - * @since 1.1.0 - * @return 状态 - */ - boolean isBusy(); - - /** - * 设置状态 - * @param busy 状态 - * @since 1.1.0 - */ - void setBusy(boolean busy); - - /** - * 获取真正的连接 - * @return 连接 - * @since 1.1.0 - */ - Connection getConnection(); - - /** - * 设置连接信息 - * @param connection 连接信息 - * @since 1.1.0 - */ - void setConnection(Connection connection); - - /** - * 设置对应的数据源 - * @param dataSource 数据源 - * @since 1.5.0 - */ - void setDataSource(final IPooledDataSourceConfig dataSource); - - /** - * 获取对应的数据源信息 - * @return 数据源 - * @since 1.5.0 - */ - IPooledDataSourceConfig getDataSource(); - -} diff --git a/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/PooledConnection.java b/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/PooledConnection.java deleted file mode 100644 index 5d54e3f8..00000000 --- a/report-core/src/main/java/com/anjiplus/template/gaea/business/modules/dataSource/pool/connection/PooledConnection.java +++ /dev/null @@ -1,457 +0,0 @@ -package com.anjiplus.template.gaea.business.modules.dataSource.pool.connection; - -import com.anjiplus.template.gaea.business.modules.dataSource.pool.api.IPooledDataSourceConfig; -import com.anjiplus.template.gaea.business.modules.dataSource.pool.exception.JdbcPoolException; -import lombok.extern.slf4j.Slf4j; - -import java.sql.*; -import java.util.Map; -import java.util.Properties; -import java.util.concurrent.Executor; - -/** - * 池化的连接 - * - * @since 1.1.0 - */ -@Slf4j -public class PooledConnection implements IPooledConnection { - - /** - * 是否繁忙 - * @since 1.1.0 - */ - private volatile boolean isBusy; - - /** - * 数据库链接信息 - * @since 1.1.0 - */ - private Connection connection; - - /** - * 对应的数据源信息 - * - * @since 1.1.0 - */ - private IPooledDataSourceConfig dataSource; - - @Override - public Statement createStatement() throws SQLException { - checkStatus(); - - return connection.createStatement(); - } - - @Override - public PreparedStatement prepareStatement(String sql) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql); - } - - @Override - public CallableStatement prepareCall(String sql) throws SQLException { - checkStatus(); - - return connection.prepareCall(sql); - } - - @Override - public String nativeSQL(String sql) throws SQLException { - checkStatus(); - - return connection.nativeSQL(sql); - } - - @Override - public void setAutoCommit(boolean autoCommit) throws SQLException { - checkStatus(); - - connection.setAutoCommit(autoCommit); - } - - @Override - public boolean getAutoCommit() throws SQLException { - checkStatus(); - - return connection.getAutoCommit(); - } - - @Override - public void commit() throws SQLException { - checkStatus(); - - connection.commit(); - } - - @Override - public void rollback() throws SQLException { - checkStatus(); - - connection.rollback(); - } - - @Override - public void close() throws SQLException { - checkStatus(); - - this.dataSource.returnConnection(this); - } - - @Override - public boolean isClosed() throws SQLException { - checkStatus(); - - return connection.isClosed(); - } - - @Override - public DatabaseMetaData getMetaData() throws SQLException { - checkStatus(); - - return connection.getMetaData(); - } - - @Override - public void setReadOnly(boolean readOnly) throws SQLException { - checkStatus(); - - connection.setReadOnly(readOnly); - } - - @Override - public boolean isReadOnly() throws SQLException { - checkStatus(); - - return connection.isReadOnly(); - } - - @Override - public void setCatalog(String catalog) throws SQLException { - checkStatus(); - - connection.setCatalog(catalog); - } - - @Override - public String getCatalog() throws SQLException { - checkStatus(); - - return connection.getCatalog(); - } - - @Override - public void setTransactionIsolation(int level) throws SQLException { - checkStatus(); - - connection.setTransactionIsolation(level); - } - - @Override - public int getTransactionIsolation() throws SQLException { - checkStatus(); - - return connection.getTransactionIsolation(); - } - - @Override - public SQLWarning getWarnings() throws SQLException { - checkStatus(); - - return connection.getWarnings(); - } - - @Override - public void clearWarnings() throws SQLException { - checkStatus(); - - connection.clearWarnings(); - } - - @Override - public Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException { - checkStatus(); - - return connection.createStatement(resultSetType, resultSetConcurrency); - } - - @Override - public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql, resultSetType, resultSetConcurrency); - } - - @Override - public CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency) throws SQLException { - checkStatus(); - - return connection.prepareCall(sql, resultSetType, resultSetConcurrency); - } - - @Override - public Map> getTypeMap() throws SQLException { - checkStatus(); - - return connection.getTypeMap(); - } - - @Override - public void setTypeMap(Map> map) throws SQLException { - checkStatus(); - - connection.setTypeMap(map); - } - - @Override - public void setHoldability(int holdability) throws SQLException { - checkStatus(); - - connection.setHoldability(holdability); - } - - @Override - public int getHoldability() throws SQLException { - checkStatus(); - - return connection.getHoldability(); - } - - @Override - public Savepoint setSavepoint() throws SQLException { - checkStatus(); - - return connection.setSavepoint(); - } - - @Override - public Savepoint setSavepoint(String name) throws SQLException { - checkStatus(); - - return connection.setSavepoint(name); - } - - @Override - public void rollback(Savepoint savepoint) throws SQLException { - checkStatus(); - - connection.rollback(savepoint); - } - - @Override - public void releaseSavepoint(Savepoint savepoint) throws SQLException { - checkStatus(); - - connection.releaseSavepoint(savepoint); - } - - @Override - public Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { - checkStatus(); - - return connection.createStatement(resultSetType, resultSetConcurrency, resultSetHoldability); - } - - @Override - public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability); - } - - @Override - public CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException { - checkStatus(); - - return connection.prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability); - } - - @Override - public PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql, autoGeneratedKeys); - } - - @Override - public PreparedStatement prepareStatement(String sql, int[] columnIndexes) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql, columnIndexes); - } - - @Override - public PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLException { - checkStatus(); - - return connection.prepareStatement(sql, columnNames); - } - - @Override - public Clob createClob() throws SQLException { - checkStatus(); - - return connection.createClob(); - } - - @Override - public Blob createBlob() throws SQLException { - checkStatus(); - - return connection.createBlob(); - } - - @Override - public NClob createNClob() throws SQLException { - checkStatus(); - - return connection.createNClob(); - } - - @Override - public SQLXML createSQLXML() throws SQLException { - checkStatus(); - - return connection.createSQLXML(); - } - - @Override - public boolean isValid(int timeout) throws SQLException { - checkStatus(); - - return connection.isValid(timeout); - } - - @Override - public void setClientInfo(String name, String value) throws SQLClientInfoException { - checkStatus(); - - connection.setClientInfo(name, value); - } - - @Override - public void setClientInfo(Properties properties) throws SQLClientInfoException { - checkStatus(); - - connection.setClientInfo(properties); - } - - @Override - public String getClientInfo(String name) throws SQLException { - checkStatus(); - - return connection.getClientInfo(name); - } - - @Override - public Properties getClientInfo() throws SQLException { - checkStatus(); - - return connection.getClientInfo(); - } - - @Override - public Array createArrayOf(String typeName, Object[] elements) throws SQLException { - checkStatus(); - - return connection.createArrayOf(typeName, elements); - } - - @Override - public Struct createStruct(String typeName, Object[] attributes) throws SQLException { - checkStatus(); - - return connection.createStruct(typeName, attributes); - } - - @Override - public void setSchema(String schema) throws SQLException { - checkStatus(); - - connection.setSchema(schema); - } - - @Override - public String getSchema() throws SQLException { - checkStatus(); - - return connection.getSchema(); - } - - @Override - public void abort(Executor executor) throws SQLException { - checkStatus(); - - connection.abort(executor); - } - - @Override - public void setNetworkTimeout(Executor executor, int milliseconds) throws SQLException { - checkStatus(); - - connection.setNetworkTimeout(executor, milliseconds); - } - - @Override - public int getNetworkTimeout() throws SQLException { - checkStatus(); - - return connection.getNetworkTimeout(); - } - - @Override - public T unwrap(Class iface) throws SQLException { - checkStatus(); - - return connection.unwrap(iface); - } - - @Override - public boolean isWrapperFor(Class iface) throws SQLException { - checkStatus(); - - return connection.isWrapperFor(iface); - } - - @Override - public boolean isBusy() { - return isBusy; - } - - @Override - public void setBusy(boolean busy) { - isBusy = busy; - } - - @Override - public Connection getConnection() { - return connection; - } - - @Override - public void setConnection(Connection connection) { - this.connection = connection; - } - - @Override - public IPooledDataSourceConfig getDataSource() { - return dataSource; - } - - @Override - public void setDataSource(IPooledDataSourceConfig dataSource) { - this.dataSource = dataSource; - } - - /** - * 对于设置为繁忙的连接,等价于关闭 - * @since 1.4.0 - */ - private void checkStatus() { - if(!isBusy) { - throw new JdbcPoolException("Connection has been closed"); - } - } - -}