18/07/2011, 08:01
|
| | Fecha de Ingreso: mayo-2010
Mensajes: 33
Antigüedad: 14 años, 6 meses Puntos: 3 | |
Como obtener los datos de un usuario almacenado en la base de datos en una sesion Estoy realizando una aplicacion web, para lo cual uso sesiones para lo del login, lo que necesito hacer es obtener los datos del usuario que se ha logueado y esta almacenado en la base de datos, en este caso necesito el codigo del usuario, para el login el usuario usa su nombre y clave.
La tabla ususario es asi:
coduser
nombre
clave
codigo del servlet login package CentroQuirurgicoController;
import CentroQuirurgicoDATA.Conexion;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
*
* @author Administrador
*/
public class LoginServlet extends HttpServlet {
/**
* Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
try {
String usuario = request.getParameter("txtUsuario");
String clave = request.getParameter("txtClave");
Connection cn = new Conexion().getConnection();
String query = "select * from usuario where nombre_usuario=?";
PreparedStatement pstmt = cn.prepareStatement(query);
pstmt.setString(1, usuario);
ResultSet rs = pstmt.executeQuery();
if ( rs.next() && clave.equals(rs.getString("Clave"))) {
HttpSession sesion = request.getSession();
sesion.setAttribute("nombre_usuario", usuario);
RequestDispatcher rd = getServletContext().getRequestDispatcher("/index.jsp");
rd.forward(request, response);
} else {
request.setAttribute("validar", "1");
RequestDispatcher rd = getServletContext().getRequestDispatcher("/Login.jsp");
rd.forward(request, response);
}
pstmt.close();
cn.close();
System.out.println("Ok");
}
catch(Exception e){e.printStackTrace();}
finally {
out.close();
}
}
}
codigo del jsp del menu despues del login
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>MVC con Java - ::: Menu ::: -</title>
<style type="text/css">
<!--
.Estilo2 {font-size: 18px; }
-->
</style>
</head>
<body>
<div align="center">
<p>::: MENU :::</p>
<table width="240" border="0">
<tr>
<td><a href="vistas/Formulario.jsp"><img src="vistas/iconos/icono-formulario.png"/></a></td>
<td><div class="Estilo2">
<a href="vistas/Formulario.jsp">SOLICITUD SALA DE OPERACIONES</a>
</div></td>
</tr>
<tr>
<td><a href="vistas/web_modificar_empleado.jsp"><img src="vistas/iconos/reportes.png"/></a></td>
<td><div class="Estilo2">
<a href="vistas/web_modificar_empleado.jsp">REPORTES</a>
</div></td>
</tr>
<tr>
<td><div class="Estilo2"><a href="vistas/Mantenimiento.html"><img src="vistas/iconos/database.png"/></a></div></td>
<td><div class="Estilo2"><a href="vistas/Mantenimiento.html">MANTENIMIENTO DE LA BASE DE DATOS</a></div></td>
</tr>
<tr>
<td><div class="Estilo2"><a href="vistas/web_consultar_empleado.jsp"><img src="vistas/iconos/salir.jpg"/></a></div></td>
<td><div class="Estilo2"><a href="vistas/web_consultar_empleado.jsp">SALIR</a></div></td>
</tr>
</table>
<%
String atributo = (String)session.getAttribute("nombre_usuario");
out.println(atributo);
%>
<p> </p>
</div>
</body>
</html>
como obtendria el codigo del usuario donde debo modificar |