Alterar atributos da classe de Conexao via Interface (jFrame)
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
Clique aqui para fazer login e interagir na Comunidade :)