Como eu crio um pool de conexões no mysql?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como eu crio um pool de conexões no mysql?
Você pode ler a resposta neste post:
https://cursos.alura.com.br/forum/topico--duvida-pool-de-conexoes-replicar-em-banco-mysql-o-que-foi-ensinado-com-hsqldb-16433
Marco, eu consegui com o código abaixo:
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource;
public class ConnectionPool {
private DataSource dataSource;
public ConnectionPool() {
MysqlConnectionPoolDataSource pool = new MysqlConnectionPoolDataSource();
pool.setUrl("jdbc:mysql://127.0.0.1:3306/loja-virtual");
pool.setUser("root");
pool.setPassword("");
this.dataSource = pool;
}
public Connection getConnection() throws SQLException {
Connection connection = dataSource.getConnection();
return connection;
}
}
Para tanto, você precisa ter o ConnectorJ disponível no projeto. Veja as instruções de instalação em https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-installing.html
Depois, altere a string de conexão do exemplo de acordo com seu ambiente de desenvolvimento. No exemplo o sistema procurará uma base de dados chamada "loja-virtual" no IP "127.0.0.1"(localhost) e na porta "3306" que é a padrão do MySQL. Ah, e claro, não se esqueça de informar o usuário e a senha nas linhas a seguir.
Eu também usei MySQL durante esse curso. Se quiser ver o código final do meu projeto acesse https://github.com/ghplay/alura-jdbc
Abraço.
Muito obrigado pelas informações
Marco, um detalhe: apesar do código acima funcionar, tenho que rever essa questão. Depois de ver o post citado pelo Gabriel eu pesquisei mais a respeito e parece que essa não é a forma correta de implementar pool de conexões para o MySQL. No link dele há inclusive um exemplo usando a biblioteca C3P0.
Ainda não tive tempo de olhar isso com calma, mas se quiser saber mais, dê uma olhada nos links abaixo:
http://stackoverflow.com/questions/2353569/am-i-using-java-pooledconnections-correctly