dúvida: busca com 2 parâmetros

3 respostas
marcusluiz83

Bom dia!

Estou desenvolvendo uma aplicação para desktop, e estou com uma dúvida de como fazer uma busca com 2 parâmetros.

Meus códigos: AnaliseVendedorDao
public List<Vendedor> getListaByDepartamento(String departamento, String loja) throws SQLException {
        String sql = "select * from vendedor where departamento like ? and loja like ?";
        java.sql.PreparedStatement stmt = this.conexao.prepareStatement(sql);
        stmt.setString(1, departamento);
        stmt.setString(2, loja);
        ResultSet rs = stmt.executeQuery();
        List<Vendedor> listaByDepartamento = new ArrayList<Vendedor>();

        while (rs.next()) {
            Vendedor vend = new Vendedor();
            vend.setCodigo(rs.getInt("codigo"));
            vend.setNome(rs.getString("nome"));
            vend.setLoja(rs.getString("loja"));
            vend.setDepartamento(rs.getString("departamento"));
            listaByDepartamento.add(vend);
        }
        rs.close();
        stmt.close();
        return listaByDepartamento;
    }
FormAnaliseVendedor
private void pesquisaDepartamento() throws SQLException {
        AnaliseVendedorDao dao = new AnaliseVendedorDao();
        vendedor = dao.getListaByDepartamento("%" + cbDepartamento.getSelectedItem() + "%"); // Aqui que eu não sei como buscar os dois parâmetros
        vendedor = dao.getListaByDepartamento("%" + cbLoja.getSelectedItem() + "%"); // Estes parâmetros são buscados em 2 jcombobox
        mostraPesquisa(vendedor);
    }
Espero que possam me ajudar. Agradeço!

3 Respostas

juliocesarss

Deixa eu ver se eu entedi.

Você quer usar os paramentros departamento e loja para faze a pesquisa?

Dica: os códigos SQL como SELECT, FROM, WHERE, use em letras maiúsculas para melhor vizualização.

FacaNaCaveira

Fala ai marcusluiz83,

vc deve fazer assim:

private void pesquisaDepartamento() throws SQLException {
        try {
            AnaliseVendedorDao dao = new AnaliseVendedorDao();
            List<Vendedor> vendedor = new ArrayList<Vendedor>();
            vendedor = dao.getListaByDepartamento("%" + cbDepartamento.getSelectedItem() + "%", "%" + cbLoja.getSelectedItem() + "%");
            mostraPesquisa(vendedor);
        } catch (SQLException e) 
            System.out.println(e.getMessage());
            e.printStackTrace();//Rastreamento da pilha de impressao
        }
    }

Como o seu metodo tem um throws SQLException é essencial que vc coloque o codigo dentro de um bloco try catch.
O que fiz foi criar um objeto vendedor do mesmo tipo do retorno do seu metodo getListaByDepartamento e passei os 2 parametros que vxc ja tinha definido quando criou o metodo.

Abração
Max

marcusluiz83

Amigos, muito obrigado mesmo! :smiley:

Funcionou perfeitamente! Agradeço pelas dicas!

Abraço!

Criado 14 de outubro de 2010
Ultima resposta 14 de out. de 2010
Respostas 3
Participantes 3