ResultSet?

4 respostas
M

pessoal, boa noite…
eu tenho a seguinte dúvida…
tenho um JFrame que tem como funcionalidade mostrar todos os usuários cadastrados…
quando eu entro neste JFrame, eu chamo o método listaCLientes()

este método listaCLientes faz o seguinte…

Cliente cliente = new Cliente;

depois eu quero pegar todos os clientes e jogar num resultSet aqui dentro…

o problema é…

qual o tipo de retorno do metodo listaCLientes na classe Cliente para que eu o receba no JFrame e fique navegando no ResultSet ???

agradeço desde já.

abraços

Mario

4 Respostas

Felagund

Trabalhe com listas não com ResultSet.
Percorra o ResultSet e jogue os valores na lista.

M

Rafael, valeu pela ajuda…

o metodo listaClientes na Classe Cliente vai ser do tipo:

public ArrayList listaClientes(){

aqui dentro eu acesso o banco e jogo o ResultSet dentro de uma variável tipo ArrayList

 return variavel

}

é isso ?

M

seria assim ???

==============================================

public ArrayList listaClientes(){
    try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        Connection conn = DriverManager.getConnection("jdbc:odbc:appJavaLocacao", "sa", "");
        Statement stm = conn.createStatement();
        String sql = "SELECT * FROM CLIENTE";
        ResultSet rs = stm.executeQuery(sql);
        if (rs.next()){
            dados.addAll(rs);
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally{
        return dados;
    }
}

============================================

Felagund

marioangelino:
seria assim ???

==============================================

public ArrayList listaClientes(){
    try {
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        Connection conn = DriverManager.getConnection("jdbc:odbc:appJavaLocacao", "sa", "");
        Statement stm = conn.createStatement();
        String sql = "SELECT * FROM CLIENTE";
        ResultSet rs = stm.executeQuery(sql);
        if (rs.next()){
            dados.addAll(rs);
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally{
        return dados;
    }
}

============================================

Quase isso cara, experimente por os cositos entre tags [ code] fica mais legivel

public ArrayList<Cliente> listaClientes(){
        try {
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            Connection conn = DriverManager.getConnection("jdbc:odbc:appJavaLocacao", "sa", "");
            Statement stm = conn.createStatement();
            String sql = "SELECT * FROM CLIENTE";
            ResultSet rs = stm.executeQuery(sql);
            if (rs.next()){
                Cliente c = new Cliente();
                c.setAlgumaCoise(rs.getAlgo("NOME_COLUNA_DO_BANCO"));
                ..faz isso com tudo os cara
                dados.add(c);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally{
            return dados;
        }
    }

assim vc não trabalha baixo nivel, a aplicação fica mais simples e mais facil de mecher.

Criado 15 de maio de 2009
Ultima resposta 15 de mai. de 2009
Respostas 4
Participantes 2