@Override
    public List<Cliente> listAll() {
        Connection conn = null;
        PreparedStatement pstm = null;
        ResultSet rs = null;
        List<Cliente> clientes = new ArrayList<>();
        try{
            conn = ConnectionFactory.getConnection();
            pstm = conn.prepareStatement(LIST);
            rs = pstm.executeQuery();
            while(rs.next()){
                Cliente c = new Cliente();
                c.setId_cliente(rs.getInt("id_cliente"));
                c.setNome(rs.getString("nome_cl"));
                c.setTelefone(rs.getString("telefone_cl"));
                c.setRg(rs.getString("rg_cl"));
                c.setCidade(rs.getString("cidade_cl"));
                c.setBairro(rs.getString("bairro_cl"));
                c.setEndereco(rs.getString("endereco_cl"));
                c.setLOJA_id_loja(rs.getInt("LOJA_id_loja"));
                clientes.add(c);                
            }
        }catch(Exception e){
            JOptionPane.showMessageDialog(null,"Erro ao listar clientes "+ e);
        }finally{
            try{
                ConnectionFactory.closeConnection(conn, pstm, rs);
            }catch(Exception e){
                JOptionPane.showMessageDialog(null,"Erro ao desconectar com o banco "+ e);
            }
        }
        return clientes;        
    }