Problema ao listar array

2 respostas
Stefany_Silva

oi, sou nova com java e estou desenvolvendo um sistema java e com mysql. so que estou com um probleminha ao listar tudo.

public class UsuarioDao {
private Connection connection;
int idusuario;
String  nome;
String  cpf;
String  email;
String  telefone;
String  descricao;
private ResultSet rs;
private ArrayList<cadastro> lista;
//construtor
public UsuarioDao() {
  
    this.connection=new ConnectionFactory().getConnection();
}
public ArrayList listarTodos() throws Exception{

String sql=SELECT * FROM usuario WHERE;

try{

Statement st= connection.createStatement();

rs= st.executeQuery(sql);

while (rs.next()){

cadastro usuario =new cadastro;

usuario.setNome(rs.getString(nome));

usuario.setCpf(rs.getString(cpf));

usuario.setEmail(rs.getString(email));

usuario.setTelefone(rs.getString(telefone));

usuario.setDescricao(rs.getString(desricao));

usuario.setIdusuario(rs.getInt(idusuario));

}

}catch (SQLException u)  {
throw new Exception ("Erro ao listar todos os cadastros");
   } 
     return lista;
 }

}

2 Respostas

Jonathan_Medeiros

Sem dizer o erro que você está tendo fica difícil te ajudar, só olhando pro código não dá pra compreender o que está acontecendo!

Mas sugiro verificar sua Query SQL que tem uma cláusula WHERE sem nenhuma condição informada, e no laço while onde você monta seus objetos de usuario você não os adiciona na lista em que quer retornar no método, seu objeto cadastro está inicializado de forma incorreta.

Outro ponto, ao invés de retornar um ArrayList retorne um List com a tipagem desejada, use a implementação de ArrayList para a sua interface List.

Exemplo:

public List<Cadastro> listarTodos() {
   //Implementação
}

List<Cadastro> usuarios = new ArrayList<>();
Stefany_Silva

olá resolvi a questão do where, e o principal que era a ArrayList. muito obrigada.

Criado 30 de abril de 2019
Ultima resposta 30 de abr. de 2019
Respostas 2
Participantes 2