Parecido com a dúvida de outra pessoa, a cada requisição 10, novas conexões são abertas sobre as anteriores. Para verificar eu inclusive peguei apenas o código da aula no github e rodei ele, a mesma coisa continua acontecendo.
Parecido com a dúvida de outra pessoa, a cada requisição 10, novas conexões são abertas sobre as anteriores. Para verificar eu inclusive peguei apenas o código da aula no github e rodei ele, a mesma coisa continua acontecendo.
Olá, Rafael! Entendo que você esteja tendo problemas com a geração de novas conexões a cada requisição. Isso pode ser devido a uma implementação incorreta do pool de conexões ou a uma falta de fechamento adequado dos recursos do banco de dados.
Na aula, foi mencionado que é importante fechar os recursos do banco de dados, como PreparedStatement
, ResultSet
e Connection
, para evitar o acúmulo de conexões no banco. Se esses recursos não forem fechados corretamente, novas conexões continuarão sendo abertas e acumuladas.
Também foi mencionado o uso do pool de conexões, que é um recurso que permite reutilizar conexões abertas, em vez de abrir novas conexões a cada requisição. Isso é feito através da biblioteca HikariCP.
Aqui está um exemplo de como o pool de conexões foi implementado na aula:
public class ConnectionFactory {
public Connection recuperarConexao() {
try {
return createDataSource().getConnection();
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
private HikariDataSource createDataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/byte_bank");
config.setUsername("root");
config.setPassword("root");
config.setMaximumPoolSize(10);
return new HikariDataSource(config);
}
}
Nesse exemplo, a função createDataSource()
cria um HikariDataSource
com um tamanho máximo de pool de 10. A função recuperarConexao()
então obtém uma conexão desse pool de conexões.
Por favor, verifique se você está fechando corretamente os recursos do banco de dados e se o pool de conexões está sendo implementado corretamente. Se o problema persistir, pode ser útil verificar a documentação da biblioteca HikariCP ou procurar por problemas semelhantes enfrentados por outros desenvolvedores.
Espero ter ajudado e bons estudos!