Поиск по jcombobox / Фильтр по jcombobox - PullRequest
0 голосов
/ 28 июня 2018

Я хочу сделать фильтр по jcombobox, а по jtexfield я сделал jtextfield один, это мой DAO и мой VIEW, но я не знаю, как добавить поиск по комбо, в таблице приведены код и вопрос, эти вопросы относятся к специальности, которая находится в комбо и по которой я хочу отфильтровать

DAO

public List buscarPregunta(String texto)throws Exception{
         ResultSet res;
         List listaPregunta = new ArrayList();
         cn = new Conexion();    
         try {
             Conexion cn = new Conexion();
             String filtro = "" + texto + "_%";
             String sql="SELECT *FROM TablaPregunta where PreguntaNombre like "+'"'+filtro+'"';
             PreparedStatement consulta = cn.getConnection().prepareStatement(sql);
             res = consulta.executeQuery();
             while (res.next()) {                 
             PreguntaModel ps = new PreguntaModel();
             ps.setIdPregunta(res.getInt("PreguntaID"));
             ps.setPregunta(res.getString("PreguntaNombre"));;
             listaPregunta.add(ps);     
             }
         } catch (Exception e) {
             System.out.println(e.getMessage());
         }
         cn.cerrarConexion();
         return listaPregunta;
     }

Это вид

public void buscarPreguntas() {
        LimpiarTablaPreguntas();
        Object[] obj = new Object[2];
        List ls;
        t = 0;
        try {
            ls = dao.buscarPregunta(txtPreguntando.getText());
            for (int i = 0; i < ls.size(); i++) {
                ps = (PreguntaModel) ls.get(i);
                obj[0] = ps.getIdPregunta();
                obj[1] = ps.getPregunta();
                modelo.addRow(obj);
                t++;
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
        this.TablaPreguntas.setModel(modelo);
    }

и это комбо, для которого я хочу выполнить поиск

public void cargarlistaEspecialidad() {
        ResultSet res;
        try {
            Conexion con = new Conexion();
            String sql = "Select * from TablaEspecialidad";
            PreparedStatement consulta = con.getConnection().prepareStatement(sql);
            res = consulta.executeQuery();
            combo.removeAllElements();
            while (res.next()) {
                combo.addElement(res.getString("EspecialidadNombre"));
            }
            jComboBox1.setModel(combo);
            con.cerrarConexion();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
...