return "Lazy Connection proxy for target DataSource [" + getTargetDataSource() + "]";
@Override public void afterPropertiesSet() { super.afterPropertiesSet(); // Determine default auto-commit and transaction isolation // via a Connection from the target DataSource, if possible. if (this.defaultAutoCommit == null || this.defaultTransactionIsolation == null) { try { Connection con = getTargetDataSource().getConnection(); try { checkDefaultConnectionProperties(con); } finally { con.close(); } } catch (SQLException ex) { logger.warn("Could not retrieve default auto-commit and transaction isolation settings", ex); } } }
getTargetDataSource().getConnection(this.username, this.password) : getTargetDataSource().getConnection();
@Override protected void destroyInstance(DataSource instance) throws Exception { if (instance instanceof LazyConnectionDataSourceProxy) { DataSource targetDataSource = ((LazyConnectionDataSourceProxy) instance).getTargetDataSource(); if (targetDataSource instanceof ReadOnlyRoutingDataSource) { List<Object> dataSources = ((ReadOnlyRoutingDataSource) targetDataSource).getDataSources(); for (Object candidate : dataSources) { if (candidate instanceof DataSource) { super.destroyInstance(instance); } } } } } }
@Override protected void destroyInstance(DataSource instance) throws Exception { if (instance instanceof LazyConnectionDataSourceProxy) { DataSource targetDataSource = ((LazyConnectionDataSourceProxy) instance).getTargetDataSource(); if (targetDataSource instanceof ReadOnlyRoutingDataSource) { List<Object> dataSources = ((ReadOnlyRoutingDataSource) targetDataSource).getDataSources(); for (Object candidate : dataSources) { if (candidate instanceof DataSource) { super.destroyInstance(instance); } } } } } }
return "Lazy Connection proxy for target DataSource [" + getTargetDataSource() + "]";
return "Lazy Connection proxy for target DataSource [" + getTargetDataSource() + "]";