Conexão com o Oracle (problemas em fechar a conexão)

2 respostas
R

Prezados,

Estou com uma aplicação que faz uma consulta a uma base de dados oracle e fecha a conexão. Porém o administrador do banco percebeu que as conexões não estão sendo fechadas, algumas estão inativas e outras ativas. Estou usando o seguinte código para abrir a conexão

DriverManager.registerDriver(new OracleDriver());

conn = DriverManager.getConnection"jdbc:oracle:oci:@", usu, psw);

query = SELECT …”;

pstmt = (OraclePreparedStatement)conn.prepareStatemen(query,OracleResultSet.TYPE_FORWARD_ONLY,OracleResultSet.CONCUR_READ_ONLY);

rset = (OracleResultSet)pstmt.executeQuery();

rset.next();


E os comandos que fecham

rset.close();

rset = null;

pstmt.close();

pstmt = null;

conn.close();

conn = null;

Preciso fazer mais alguma coisa? Estou conectando da forma certa?

Obrigado pela atenção

2 Respostas

_fs

Um palpite decente: chame conn.commit() antes de fechá-la.

L

Certifique-se se está ocorrendo alguma exceção antes ou durante o fechamento da conexão, pode ser mais um caso de exception swallowing. Outro detalhe é que dependendo do driver, não me lembro quais, pode estar sendo feito cache da conexão em um pool mantido pelo driver e aí o comportamento é esse mesmo…

Criado 17 de maio de 2007
Ultima resposta 19 de mai. de 2007
Respostas 2
Participantes 3