Fechando Conexão com BD

5 respostas
Ment0r

Olá amigos criei um metodo para me conectar ao banco de dados. Mais não to conseguindo fazer algo simples: “Fechar a conexão”.
Meu trecho de codigo que estabelece a conexão é esse:

public Connection conectar(){ try { Class.forName("org.firebirdsql.jdbc.FBDriver"); Connection con = DriverManager.getConnection( "jdbc:firebirdsql:localhost:C:/ProjetoPOOII/CHUCHUDB.FDB", "sysdba", "masterkey"); //System.out.println("Conexão estabelecida com sucesso !!!"); JOptionPane.showMessageDialog(null, "Conexão estabelecida com sucesso !!!","<<Aviso>>", JOptionPane.INFORMATION_MESSAGE); return con; } catch (Exception e) { //System.out.println("Não foi possível conectar ao banco " + e.getMessage()); JOptionPane.showMessageDialog(null,"Não foi possível conectar ao banco." + e.getMessage(),"ERRO!", JOptionPane.WARNING_MESSAGE); return null; } }
Estou fazendo assim - conectar().close(); mas não da certo.
Alguém pode me ajudar? Agradeço desde já.

5 Respostas

nandolup

Fala ae cara tudo blz?

Coloca o método que vc esta usando para fechar a conexão, para ficar melhor para avialiar o que esta acontecendo…

abraços…

ajfilho

public void desconectar() throws SQLException{ Connection con = conectar(); if ((con != null) || (!(con.isClosed()))) { con.close(); } }

Abraços!

yoshikichi

Ment0r:
Olá amigos criei um metodo para me conectar ao banco de dados. Mais não to conseguindo fazer algo simples: “Fechar a conexão”.
Meu trecho de codigo que estabelece a conexão é esse:

public Connection conectar(){ try { Class.forName("org.firebirdsql.jdbc.FBDriver"); Connection con = DriverManager.getConnection( "jdbc:firebirdsql:localhost:C:/ProjetoPOOII/CHUCHUDB.FDB", "sysdba", "masterkey"); //System.out.println("Conexão estabelecida com sucesso !!!"); JOptionPane.showMessageDialog(null, "Conexão estabelecida com sucesso !!!","<<Aviso>>", JOptionPane.INFORMATION_MESSAGE); return con; } catch (Exception e) { //System.out.println("Não foi possível conectar ao banco " + e.getMessage()); JOptionPane.showMessageDialog(null,"Não foi possível conectar ao banco." + e.getMessage(),"ERRO!", JOptionPane.WARNING_MESSAGE); return null; } }
Estou fazendo assim - conectar().close(); mas não da certo.
Alguém pode me ajudar? Agradeço desde já.


Coloca o Connection con como atributo da classe.
Ai vc fecha ele qm em um metodo separado.
Sacou?

yoshikichi
ajfilho:
public void desconectar() throws SQLException{
        Connection con = conectar();
        if ((con != null) || (!(con.isClosed()))) {
            con.close();
        }
}
Abraços!
Neste caso vc esta abrindo uma nova conexao e fechando. A ideia ´não é abrir uma nova conexao e fechar, e sim fechar a anterior
class Conecta{
Private Connection con;
public Connection conecta(){
//realiza sua conexão.
}
public void desconectar() throws SQLException{
       
        if (con != null) {
            this.con.close();
        }
}
}
ajfilho

É, eu percebi isso depois que tinha feito…

Valeu pela observação.

Abraços!

Criado 3 de dezembro de 2008
Ultima resposta 3 de dez. de 2008
Respostas 5
Participantes 4