Como fechar conexão após consulta

6 respostas
P

ao efetuar varias pesquisas consta o seguinte erro .:muitos usuarios conectados e não consigo efetuar um pasquisa-(Sistema-Desktop-Java) Banco.: Postgres como resolvo ,teria como fechar ou concluir assim que efetuar cada pesquisa? vlw.

6 Respostas

R

É só usar o método close() da interface Connection. Provavelmente você está usando 1 conexão para cada operação do banco. Isso é bastante caro em termos de recursos. A solução imediata é você fechar a conexão sempre. Abordagens mais realistas consistem em reutilizar 1 conexão pelo máximo de operações possíveis, e sempre fechar os ResultSet’s ou Statement’s usados.

P

thanks.

S

eu sempre fecho tudo usando o .close();

P

dentro do try-catch ou depois de chamar a pesquisa por ex.? try {…close();}catch(){} / metodo(); close();?

J

Mais ou menos assim…

Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
   conn = ConnectionFactory.getConnection();
   stmt = conn.prepareStatement( sql() );
   rs = stmt.executeQuery();
   ... //Demais linhas de código.
} catch (SQLException e) {
   // Tratar Exceptions
} finally {
   rs.close();
   stmt.close();
   conn.close(); 
}

Ou como o rmendes08 falou, fechar apenas os recursos de Statement’s e ResultSet’s após a consuta, e tentar reaproveitar ao máximo a Connection pois isso fica caro para o SGBD…

P

vlw.

Criado 23 de maio de 2011
Ultima resposta 26 de mai. de 2011
Respostas 6
Participantes 4