Olá, gostaria de uma ajuda para popular meu comboBox com os dados que estão cadastrados no MySQL, no caso:
Este é o código apenas do comboBox, claro que possui um conteudo maior, porém o comboBox está vindo em branco no formulário, com items ja cadastro no banco de dados, alguém poderia me ajudar ?
Tabela: cadastro
ID: codigo
Nome: nome
No caso essas são as informações que sao realmente necessárias para aparecer no comboBox, o id como o valor e o nome para identificar, então apenas o nome seria exibido enquanto o codigo que será o real valor na seleção de um elemento no combo.
CadastroDAO.javapublic List getList() throws Exception {
ArrayList consulta = new ArrayList<>();
String sql = "SELECT * FROM cadastro";
Connection conn = ConnectionFactory.getConnection();
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
consulta.add(new Cadastro(rs.getInt("codigo"), rs.getString("nome")));
}
rs.close();
stmt.close();
ConnectionFactory.closeConnection(conn);
return consulta;
}
private List<Cadastro> consulta = new ArrayList();
public List<Cadastro> getConsulta() {
return consulta;
}
public void setConsulta(List<Cadastro> consulta) {
this.consulta = consulta;
}
public class FrmCadastro extends javax.swing.JFrame {
private List<Cadastro> consulta = new ArrayList();
public FrmCadastro() {
initComponents();
try {
CadastroDAO cadastroDAO = new CadastroDAO();
consulta = cadastroDAO.getList();
comboConsultar.setModel(new DefaultComboBoxModel(consulta.toArray()));
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "ERRO:" + e.getMessage());
}
}
}