Fórum Alterar atributos da classe de Conexao via Interface (jFrame) #590070
25/12/2017
0
Olá pessoal,
Criei num projeto um JFrame chamado (DadosConfiguracoesDB) onde possuí jTextFields: enderecoDB, nomeDB, usuarioDB, senhaDB. Meu propósito é alterar a conexão do banco, via interface, e não alterar a classe de Conexão.
Estou transportando esses dados com um Beans (ConfiguracoesDadosBeans), ele chega até no método receberConfgsDB que criei na classe Conexao, porém, a minha dificuldade é que preciso que ele entre no método Connection (não sei se é possível) para receber as configurações digitadas no jFrame, tentei de algumas formas, mas sempre ele retorna os valores null.
Criei num projeto um JFrame chamado (DadosConfiguracoesDB) onde possuí jTextFields: enderecoDB, nomeDB, usuarioDB, senhaDB. Meu propósito é alterar a conexão do banco, via interface, e não alterar a classe de Conexão.
Estou transportando esses dados com um Beans (ConfiguracoesDadosBeans), ele chega até no método receberConfgsDB que criei na classe Conexao, porém, a minha dificuldade é que preciso que ele entre no método Connection (não sei se é possível) para receber as configurações digitadas no jFrame, tentei de algumas formas, mas sempre ele retorna os valores null.
[code=java]package Persistência;
import java.sql.Connection;
import java.sql.DriverManager;
import javax.swing.JOptionPane;
import Beans.ConfiguracoesDBBeans;
import Interface.DadosConfiguracoesDB;
import Interface.EmprestarMidia;
import java.sql.Array;
/**
*
* @author user
*/
public class Conexao {
private Connection conectar;
private Connection conn;
private String recebeEnderecoDB;
private String recebeNomeDB;
private String recebeUsuarioDB;
private String recebeSenhaDB;
ConfiguracoesDBBeans configuracoesDBBeansEnvia = new ConfiguracoesDBBeans();
public Conexao(){
}
public void recebeConfgsDB(ConfiguracoesDBBeans configuracoesDBBeans){
configuracoesDBBeansEnvia = configuracoesDBBeans;
/*recebeEnderecoDB = configuracoesDBBeans.getEnderecoDB();
recebeNomeDB = configuracoesDBBeans.getNomeDB();
recebeUsuarioDB = configuracoesDBBeans.getUsuario();
recebeSenhaDB = configuracoesDBBeans.getSenha();*/
Conexao conexao = new Conexao();
conexao.enviaConfgsDB();
//conexao.atualizaConfgsDB(recebeEnderecoDB,recebeNomeDB,recebeUsuarioDB,recebeSenhaDB);
}
public ConfiguracoesDBBeans enviaConfgsDB(){
ConfiguracoesDBBeans configuracoesDBBeansEnviaConfgs = new ConfiguracoesDBBeans();
configuracoesDBBeansEnviaConfgs = configuracoesDBBeansEnvia;
return configuracoesDBBeansEnviaConfgs;
}
public Connection ConectaBanco(){
Conexao conexao = new Conexao();
ConfiguracoesDBBeans configuracoesDBBeansRecebe = new ConfiguracoesDBBeans();
configuracoesDBBeansRecebe = conexao.enviaConfgsDB();
String usuarioDB = configuracoesDBBeansRecebe.getUsuario();
String senhaDB = configuracoesDBBeansRecebe.getSenha();
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conectar = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=VL",usuarioDB,senhaDB);
}catch(Exception ex){
JOptionPane.showMessageDialog(null,"Erro ao fazer a conexão com o banco de dados" + "\\n" +
"UsuarioDB: " + usuarioDB + " | " + "SenhaDB: " + senhaDB + "\\n" +
"Mensagem: " + ex.getMessage());
}
return conectar;
}
public Connection getConexao(){
Connection conecta;
Conexao conexao = new Conexao();
conecta = conexao.ConectaBanco();
return conecta;
}
}
David
Curtir tópico
+ 0
Responder
Posts
15/11/2018
Nelson Anjos
Olá. Desse jeito ele vai retornar nulo por que antes de return, você instanciou uma novo conecta. Você quer deixar uma opção para o usuário trocar o caminho do bd? Tem formas mais simples de fazer Isso.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)