Não entendi esse getId_departamento();. Vc não quer passar o parametro pra o PreparedStatement?
isso eu fiz na tela de cadastro
simm eu queria passar o parametro getId_departamento
para setar no insert
Então o exemplo que passei ali em cima deve ajudar
opa mano eu pensando
consegui fazer isso:
cbDepart.setOnAction((ActionEvent event) -> {
Departamento d = new Departamento();
d.setId_departamento(cbDepart.getSelectionModel().getSelectedItem().getId_departamento());
});
assim eu poderia utilizar o d como parametro
mas eu estou com um problema eu não irei poder acessar o d dentro do meu metodo para criar o enviar os parametros.
Cara:
Departamento mod = new Departamento();
Object selected = cbDepart.getSelectionModel().getSelectedItem();
int i = (int) selected;
mod.setId_departamento(i);
Depois, na hora de setar no banco, é só fazer isso:
pst.setInt(mod.getId_departamento());
tentei assim porem deu error:
public void initialize(URL url, ResourceBundle rb) {
depart();
cbDepart.setOnAction((ActionEvent event) -> {
Object selected = cbDepart.getSelectionModel().getSelectedItem().getId_departamento();
int i = (int) selected;
departamento.setId_departamento(i);
System.out.println(""+departamento.getId_departamento());});
private Departamento departamento;
Exception in thread "JavaFX Application Thread" java.lang.NullPointerException
tenta assim
nomedacombobox.setModel(new DefaultComboBoxModel(departamentos.toArray()))
ai pra pegar o item selecionado
departamento =(Departamento)nomedacombobox.getSelectedItem()
nomedacombobox.setModel(new DefaultComboBoxModel(departamentos.toArray()))
eu tentei assim e não tem essa classe setmodel
cbDepart.setModel(new DefaultComboBoxModel(departamentos.toArray()));
Como eu conseguiria popular meu combo box com essa consulta que fiz no meu DAO
?
public class DepartamentoDAO {
private Connection con;
public DepartamentoDAO() {
this.con = new ConnectionFactory().getConnection();
}
public boolean popularComboBox() throws SQLException{
List<String> setores = new ArrayList<String>();
String query = "SELECT * FROM departamentos";
PreparedStatement ps = con.prepareStatement(query);
ResultSet rs = ps.executeQuery();
while(rs.next()){
setores.add(rs.getString("nome_setor"));
}
ps.close();
return true;
}
}
teria como popular?
@FXML
private JFXComboBox cbDepart;
ss
public List<Departamento> listar() {
List<Departamento> departamentos = new ArrayList();
try {
psmt = connect.prepareStatement("SELECT id, nome from departameto", PreparedStatement.RETURN_GENERATED_KEYS);
rs = psmt.executeQuery();
while (rs.next()) {
Departamento d = new Departamento();
d.setId(rs.getInt("id"));
d.setNome(rs.getString("nome"));
departamentos.add(d);
}
return departamentos;
} catch (SQLException e) {
System.out.println(e.getMessage());
return null;
}
}
não consegui editar o post de cima, e não entende de JFx
public void test(){
Departamento departamento = (Departamento) cbDepart.getSelectionModel().getSelectedItem();
JOptionPane.showMessageDialog(null,"ID: "+departamento.getId_departamento()+"nome"+departamento.getNome_setor());
JOptionPane.showMessageDialog(null,"ID: "+departamento.getId_departamento()+"nome"+departamento.getNome_setor());
JOptionPane.showMessageDialog(null,"ID: "+departamento.getId_departamento()+"nome"+departamento.getNome_setor());
}
vlw manos, consegui resolver…