Olá, sou iniciante no GUJ e iniciante na programação, estou fazendo um pequeno sistema de Quiz para crianças que poderá ser aplicado em escolas,onde na tela inicial tem 2 ComboBox um para listar as turmas e outro para listar os usuários. O que eu preciso fazer : Ao selecionar uma turma no ComboBox da turma, que aparecesse no ComboBox Usuários somente os usuários que estão cadastrado naquela turma selecionada no ComboBox. Estou utilizando banco de dados (SQLITE) e aplicação com JAVAFX, porém não estou conseguindo fazer essa listagem, alguém poderia me ajudar ? Segue os códigos.
Esses dois métodos tem na minha classe UsuarioDAO
public ArrayList listarTodasTurmas() {
ArrayList turmas = new ArrayList();
String sql = “Select turma from usuarios where id <> 3 order by login”;
try {
PreparedStatement ps = Constants.conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
turmas.add(rs.getString(“turma”));
}
} catch (Exception e) {
e.printStackTrace();
}
return turmas;
}
public ArrayList<Usuario> filtrar() {
ArrayList<Usuario> lista = new ArrayList<Usuario>();
ArrayList<String> turmas = new ArrayList<String>();
turmas = listarTodasTurmas();
Usuario u = new Usuario();
String sql = "Select login from usuarios where turma like ? order by login";
try {
PreparedStatement ps = Constants.conn.prepareStatement(sql);
ps.setString(1, turmas+"%");
ResultSet rs = ps.executeQuery();
while (rs.next()) {
u.setLogin(rs.getString("login"));
lista.add(u);
}
} catch (Exception e) {
e.printStackTrace();
}
return lista;
}
Com o código acima, eu consigo selecionar uma turma, porém no ComboBox usuário não aparece nada, alguém pode me ajudar?
Esse é a minha tabela do banco