Criando um dataSource estático, uma inicialização estatica para o dataSource e um getConnection estático? Pra nunca precisar instanciar nenhum objeto para adquirir uma conexão?
package br.com.caelum.jdbc;
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.hsqldb.jdbc.JDBCPool;
public class ConnectionPool {
private static DataSource dataSource;
static {
JDBCPool pool = new JDBCPool(); // Cria uma "pool" de conexões para distribuir
pool.setUrl("jdbc:hsqldb:hsql://localhost/loja-virtual");
pool.setUser("SA");
pool.setPassword("");
dataSource = pool; // adiciona ao dataSource (fonte para armazenar e distribuir as conexões) ela é uma interface que só tem o metodo getConnection()
}
public static Connection getConection() throws SQLException {
Connection conexao = dataSource.getConnection();
// Connection conexao = DriverManager.getConnection("jdbc:hsqldb:hsql://localhost/loja-virtual", "SA", "");
return conexao;
}
}