Bom dia pessoa, criei um DAO que possui o seguinte o método para listar todos os clientes e ao selecionar um deles pelo código, todas as informações desse cliente sejam enviadas para outra página para que possa ser alterados os seus dados.
O primeiro método lista todos os clientes cadastrados:
public List<Clientes>getClientes() throws SQLException{
try{
List<Clientes>cliente = new ArrayList<Clientes>();
String sql = "select*from cliente";
PreparedStatement stm = conn.prepareStatement(sql);
ResultSet rs = stm.executeQuery();
while (rs.next()){
Clientes cli = new Clientes();
cli.setIdCliente(rs.getLong("idCliente"));
cli.setNome(rs.getString("nome"));
cli.setEndereco(rs.getString("endereco"));
cli.setFone(rs.getString("fone"));
cliente.add(cli);
}
stm.close();
rs.close();
return cliente;
}catch(SQLException e){
throw new RuntimeException(e);
}
}
já o segundo serve para buscar todas as infomações do cliente pelo código para que seja atualizado. No momento que instancio a classe DAO na página JSP, chamo o método abaixo para selecionar as informações de um cliente e alterá-lo, porém na chamada do metodo continua apresentando o seguinte erro: cannot find symbol: variable idCliente. Já tentei várias alterçoes e continua o mesmo erro.
public Clientes getCliente(Long idCliente) throws ClassNotFoundException, SQLException{
Connection con = new ConexaoBanco().getConnection();
String sql ="select*from cliente where idCliente = ?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setLong(1,idCliente);
ResultSet res = ps.executeQuery();
List<Clientes> cliente = getClientes(); // repasso para uma lista o método getClientes, que lista todos os clientes
return cliente.get(0);
}
}
Na página JSP faço dessa forma:
[code]
<%
clienteDAO dao = new clienteDAO();
List<Clientes> cli =dao.getCliente(idCliente);
for(Clientes clie: cli){
%>
<tr>
<td><%=clie.getIdCliente()%></td>
<td><%=clie.getNome()%></td>
<td><%=clie.getEndereco()%></tdr>
<td><%=clie.getFone()%></td>
<td><a href ="EditarCliente.jsp?idCliente=<%=clie.getIdCliente() %>">Editar</a></td>
</tr>
<%
}
%>
[/code] No link gostaria de enviar somente idCliente, mais que fossem também as outras informações sem que tenha que fazer &nome=<%=clie.getNome() %>