Olá,
Estou com um problema de lógica em um exercicio academico onde ha uma pagina jsp quem contém 2 campos de texto para o login e senha … depois eu faço uma conexao com o banco Mysql pra validar este usuario, se estiver correto eu crio um objeto usuário pegando o restante das informações do banco, e eu tenho q coloca esse objeto na sessão…
Meu problema é como fazer pra depois eu exibir só o atributo nome deste objeto q esta na sessão !!!
a parte da validação e da atriubuição do objeto na sessão :
while(rs.next()){
int id = rs.getInt("id");
String nome = rs.getString("nome");
String login = rs.getString("login");
String pass = rs.getString("pass");
int tipo = rs.getInt("tipo");
if((login.equals(p_login))&& pass.equals(p_pass)){
found = true;
Usuario user = new Usuario(id, nome, login, pass, tipo);
HttpSession sessao = request.getSession();
sessao.setAttribute("usuario", user);
break;
}
}
stmt.close();
rs.close();
conexao.close();
Usuario user = (Usuario) sessao.getAttribute("usuario");
user.getNome();
Para exibir na jsp:${user.nome}
Com JSTL:<c:out value="${user.nome}"></c:out>
Blz? Flw! :thumbup:
deu certo valeu !!! acho q se eu quebrasse mais um pouco a cabeça eu ia achar essa lógica … mais o forum ta ai pra isso !!!
Mas essa minha aplicação continua com outros erros q talvez vcs possam me ajudar tb !!!
é o seguinte … depois de fazer o login, ela é direcionada para uma outra jsp q contém links para paginas que efetuam operações com o banco (cadastra usuário, troca senha, deletar usuário, etc…) o problema é q nenhuma dessas funções estão funcinando ! ele da erro na instrução SQL … mais eu tenho quase certeza q elas estão corretas … mesmo pq são bem simples …
Segue o código da função para alterar a senha :
<%
String pass = request.getParameter("pass");
String login = (String)session.getAttribute("login");
try{
String sql = "UPDATE users SET pass = '" + pass + "' WHERE login = '" + login + "';";
out.println(sql);
Connection conexao = ConectorBD.obterConexaoBD();
Statement stmt = conexao.createStatement();
ResultSet rs = stmt.executeQuery(sql);
stmt.close();
rs.close();
conexao.close();
}catch (SQLException e){
out.println("Erro na execução da instrução SQL");
}
RequestDispatcher rd = request.getRequestDispatcher("menu.jsp");
rd.forward(request, response);
%>
Agradeço já a ajuda !!!