Foros del Web » Programación para mayores de 30 ;) » Java »

pasar muchos datos de una consulta al jsp

Estas en el tema de pasar muchos datos de una consulta al jsp en el foro de Java en Foros del Web. hola, supongo que esto es algo muy sencillo, pero ahora mismo no caigo... necesito rellenar una tabla con todas las reservas de una persona entonces ...
  #1 (permalink)  
Antiguo 07/11/2008, 10:37
 
Fecha de Ingreso: febrero-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 0
pasar muchos datos de una consulta al jsp

hola,
supongo que esto es algo muy sencillo, pero ahora mismo no caigo...

necesito rellenar una tabla con todas las reservas de una persona

entonces hago la consulta en el servlet, pero luego surge mi duda...como paso los datos de vuelta al jsp para que cree la tabla???

si fuera una sola reserva no habría problema, pero para pasarlas todas como lo hago?

un saludo!
  #2 (permalink)  
Antiguo 07/11/2008, 11:12
Avatar de cptanalatriste  
Fecha de Ingreso: octubre-2008
Ubicación: Lima, Perú
Mensajes: 118
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: pasar muchos datos de una consulta al jsp

Hola Guille,

En tu servlet, obtenienes la lista de reservas de la base de Datos como un List de objetos del tipo Reserva:

//debes implementar ese método
List listaReservas = dao.getListaReservas();

Luego, colocas la lista obtenida como atributo, puede ser el scope Session o Request (personalmente, prefier request)

//request es el parámetro HttpRequest del método doGet o doPost
request.setAttribute("lista", listaReservas)

Luego, redireccionas el procesamiento del request al JSP donde vas a mostrar la tabla:

response.sendRedirect("listadoReservas.jsp");

Finalmente, en tu JSP capturas el atributo que contiene las reservas de esta manera:

List listaReservas = (List)request.getAttribute("lista");

Y mediante Scriptlets puedes procesar la tabal conteniendo las reservas:
<table>
<%
for (int i = 0;i < listaReservas.size(); i++)
{
Reserva reserva = (Reserva)listaReservas.get(i);
%>
<tr>
<td><%=reserva.getNombre %></td><%= reserva.getCodigoReserva()%></td>
</tr>
<%}%>


Usar scriptlets es malo, poco elegante y no debería usarse (sólo lo puse para fines didácticas xD). Te recomiendo usar displayTag para ese tipo de tareas:

http://displaytag.sourceforge.net/11/


Espero sea de ayuda:

Carlos G. Gavidia
SCJP - SCWCD
http://certified-es.blogspot.com/
  #3 (permalink)  
Antiguo 07/11/2008, 14:11
 
Fecha de Ingreso: febrero-2008
Mensajes: 15
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: pasar muchos datos de una consulta al jsp

ah vale, no sabía que se podían pasar listas, muchas gracias :P

por cierto, lo de dao.get...

que es eso de dao???es la primera vez que lo veo
  #4 (permalink)  
Antiguo 07/11/2008, 22:07
Avatar de cptanalatriste  
Fecha de Ingreso: octubre-2008
Ubicación: Lima, Perú
Mensajes: 118
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: pasar muchos datos de una consulta al jsp

Ah..!! Me olvide de poner estas lineas antes:

ReservaDAO dao = new ReservaDAO();

Entonces, dao vendría a ser una instancia de ReservaDAO. DAO es un patrónd e diseño (Data Access Object) que establece que la lógica de conexión a base de datos y ejecución de consultas debe realizarse en una capa (tier) aparte. En nuestro caso, esa capa está representada por la clase ReservaDAO. Dicha clase tiene el método getListaReservas() que nos devuelve las reservas necesarias después de acceder a BD.

En otras palabras, tu lógica de acceso a BD (DriverMannager.gerConnection().... y todo ese rollo) no debería estar en tu servlet, sino en una clase aparte.

Espero sea de ayuda,

Carlos G. Gavidia
SCJP - SCWCD
http://certified-es.blogspot.com/
  #5 (permalink)  
Antiguo 17/11/2008, 08:16
 
Fecha de Ingreso: octubre-2008
Mensajes: 9
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: pasar muchos datos de una consulta al jsp

Buenas amigos, diculpa cptanalatriste pero hubo lgo que no entendi, esta clase ReservaDAO extiende de algun otra clase epecifica o implementa alguna interfaz...? otra cosa, no estoy muy familiarizado al uso de Listas, sera que puedes explicar un poco mas acerca de su uso para paso de varibles entre Servlets y JPS´s o mas practico poner un ejmplo de dicha clase...Gracias de antemano
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:37.