Senhores, estou a desenvolver um sistema que vai reee-vo-lu-cionaaar a internet, trata-se de uma agenda de contatos online,
Por enquanto tenho aqui uma tabela de usuarios e uma tabela de contatos, aonde em contatos o campo con_userid se relaciona com o id da tabela usuarios.
Então o usuário vai logar e receber uma lista de seus contatos, a lista que ele vai receber será dada a partir da clausula:
String sql = "select * from contatos where con_userid = " + userId; //recebe o parametro do metodo getLista
o método getLista fica assim:
public [b]List<Contato> getLista(int userId)[/b] {
String sql = "select * from contatos where con_userid = " + userId;
List<Contato> contatos = new ArrayList<Contato>();
try {
PreparedStatement stmt = this.connection.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
Contato contato = new Contato();
//código que popula contato
}
rs.close();
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
return contatos;
}
perceba que o método recebe um parametro, que é o Id do usuário logado, então na hora de exibir a lista eu vou receber via post o id do usuário logado e através de JSTL enviar para o método getLista, a parte que nos interessa agora do lista-contatos.jsp ficou assim:
<c:forEach var="contato" items="${dao.lista}" >
Eu sei que o id do usuario pode ser acessado simplesmente com ${contato.user_id}
mas como eu envio para o getLista o id do usuário? sei que JSTL nao envia parametro, mas nao consigo enxergar como faze-lo de outra forma. Agradeço desde já sua grande ajuda.
acontece que estou utilizando JSTL para exibir a lista de contatos