Boa tarde!
Tenho uma frame onde o usuario digita os dados de acesso ao banco, pex. nome do banco, driver, usuario,senha e assim por diante. Então preciso pegar esses dados e conectar ao banco. No entanto, até agora só conheço essa forma de conectar ao banco. Desta forma, tenho todas os metodos ‘tradicionais’, (alterar,excluir,… pronto para ser usado).
O que eu preciso fazer para pode pegar da tela e conectar ao banco, essa ação de pegar e conectar vai ficar na classe que contem a acao dos botoes?
Você pode criar uma classe somente para a conexão e as operações, e uma classe para o frame. No frame você instancia um novo objeto da classe de conexão, passando pra ele as informações como argumentos.
Classe do frame, dentro do evento do botão conectar:
Conexao conexao = new Conexao();
conexao.conectar(tfUrl.getText(), tfUsuario.getText(), tfSenha.getText());
R
raphaelFree
Depois que postei , cai na real e fiz algo muito parecido com que voce postou pra mim. Contudo ficou assim, mas continua dando erro.
-->classeconexaoStringdriver=pagina.getDriver();Stringurl=pagina.getUrl();Stringusuario=pagina.getUsuario();Stringsenha=pagina.getSenha();try{Class.forName(driver).newInstance();// pegar o que veio da tela---- tentei armazenar em uma variavel--- axo ki naum deu certoConnectionconn=DriverManager.getConnection(url,usuario,senha);returnconn;}catch(SQLExceptionex){System.out.println("SQLException: "+ex.getMessage());System.out.println("SQLState: "+ex.getSQLState());System.out.println("VendorError: "+ex.getErrorCode());returnnull;}catch(Exceptione){System.out.println("Problemas ao tentar conectar com o banco de dados: "+e);returnnull;}}}
–> depois na acao do botao fiz assim :
Conexao conexao = new Conexao();
conexao.conectar(); // passei vazio -- pq chamei esse metodo de outra classe
NataliaOliveira
Qual o erro que tá dando?
R
raphaelFree
erro de programador iniciante… Consegui arrumar e minha classe conexao ficou assim… exatamente como você me informou… e a classe onde tem o botão ficou como vc me passou… Muito obrigado… consegui aprender mais um coisa nova nesta tarde.
publicvoidconectar(Stringdriver,Stringurl,Stringusuario,Stringsenha){try{Class.forName(driver);Connectionconn=DriverManager.getConnection(url,usuario,senha);System.out.println("conexao ok");JOptionPane.showMessageDialog(null,"Conexão bem Sucedida","OK",JOptionPane.INFORMATION_MESSAGE);}catch(ClassNotFoundExceptione){System.out.println(e.getMessage());JOptionPane.showMessageDialog(null,"Não foi possível conetar ao banco","OK",JOptionPane.ERROR_MESSAGE);}catch(SQLExceptione){System.out.println("SQLException: "+e.getMessage());System.out.println("SQLState: "+e.getSQLState());System.out.println("VendorError: "+e.getErrorCode());JOptionPane.showMessageDialog(null,"Não foi possível conetar ao banco","OK",JOptionPane.ERROR_MESSAGE);}catch(Exceptione){System.out.println("Problemas ao tentar conectar com o banco de dados: "+e);JOptionPane.showMessageDialog(null,"Não foi possível conetar ao banco","OK",JOptionPane.ERROR_MESSAGE);}}}