Boa Tarde Galera
Estou com 2 classe uma CadastroCliente e outra Cadastro
Na cadastro eu quero listar todos os nomes dos clientes da classe CadastroCliente.
Estou fazendo o seguinte
na Classe Cadastro
Eu fiz um método para pegar os nomes, fazendo um select assim
[code] public void nomeCliente()
{
try{
Cadastro_Cliente nome = new Cadastro_Cliente();//chamando metodos da outra classe
if(!nome.tfNome.getText().equals("")){
String SQL=“Select nome From Cadastro_Cliente”;
while(rs.next()){
rs=MeuState.executeQuery(SQL));
}
}
}catch(Exception e)
{}
}[/code]
agora na hora de jogar no JComboBox não consigo ,
jComboBoxCliente.setModel(new DefaultComboBoxModel(new String[] { null, "Item 1", "Item 2", "Item 3", "Item 4" }));
alguem ai tem uma sugestão??
thiago, bem, para ser sincero não entendi seu código direito principalmente esta parte:
String SQL="Select nome From Cadastro_Cliente";
while(rs.next()){
rs=MeuState.executeQuery(SQL));
}
Mesmo assim eu faria o seguinte se quisesse inserir algo em um combo.
jComboBoxCliente.addItem(rs.getString("nome_do_ccampo"));
agora ficou assim e nada
public void nomeCliente()
{
try{
Cadastro_Cliente nome = new Cadastro_Cliente();//chamando metodos da outra classe
if(!nome.tfNome.getText().equals("")){
String SQL="Select Nome From Cadastro_Cliente";
//enquanto tiver algo na coluna add no comboBox
while(rs.next()){
jComboBoxCliente.addItem(rs.getString("Nome"));
rs=MeuState.executeQuery(SQL);
}
}
}catch(Exception e)
{}
}
aI EU TO CHAMANDO ESSE METODO NO CONSTRUTOR DA CLASSE CADASTRO
ALGUÉM AI SABE O PQ ELE NÃO PREENCHE O JCOMBOBOX??
Talvez seja porque vc NÃO FEZ A CONEXÃO COM O BANCO DE DADOS !!!
public void nomeCliente(){
try{
Cadastro_Cliente nome = new Cadastro_Cliente();//chamando metodos da outra classe
if(!nome.tfNome.getText().equals("")){
String SQL="Select Nome From Cadastro_Cliente";
Connection conn = seuMetodoParaObterConexao();
Statement selc=conn.createStatement();
selc.executeQuery(SQL);
rs = selc.getResultSet();
//enquanto tiver algo na coluna add no comboBox
while(rs.next()){ jComboBoxCliente.addItem(rs.getString("Nome"));
}
}
}catch(Exception e){ e.printStackTrace();}
Outra coisa, procure tratar suas exceções, fica mais fácil entender o problema.
dwduncan
A conexão ja esta pronta , criei no construtor da clase…
o estranho que ele ta ficando em branco e não da erro.
Teste a conexão dentro do método, só para ter certeza que ele funciona.
Muitas coisas podem ter ocorrido no meio do caminho, como por exemplo algum outro método fechar a conexão (conn.close()). Se vc puder postar as classes relacionadas será mais fácil de ver o que tá pegando !
dwduncan
Agora q reparei q estou viajando eu não preciso passar pela outra classe para pegar o nome apenas eu posso pegar pelo banco.
Ai esta a solução
[code] public void nomeCliente()
{
try{
String url = “jdbc:mysql://localhost/cadastro_analista”;
String username= “root”;
String password= “”;
Class.forName("com.mysql.jdbc.Driver");
Connection MinhaConexao = DriverManager.getConnection(url, username, password);
MeuState = MinhaConexao.createStatement();
String SQL="Select * From cadastro_cliente";
rs=MeuState.executeQuery(SQL);
while(rs.next()){
jComboBoxCliente.addItem(rs.getString("Nome"));
}
}catch(Exception e){
JOptionPane.showMessageDialog(null,e.getMessage()+ " Erro");
e.printStackTrace();
}
}[/code]
Muito Obrigado …