• Viernes 3 de Mayo de 2024, 16:07

Autor Tema:  Como Almacenar Y Despues Obtener Una Variable  (Leído 2077 veces)

gamarin

  • Nuevo Miembro
  • *
  • Mensajes: 6
    • Ver Perfil
Como Almacenar Y Despues Obtener Una Variable
« en: Viernes 24 de Septiembre de 2004, 17:43 »
0
Hola que tal chavos y chavas, expertos en Java, otra vez molestandolos por a qui, los que pasa es que paso 2 variables ( nombre y NIP)de un formulario HTML a un servlet, en el servlet las recibo y despues hago una consulta a una BD. pero la variable (NIP) necesito pasarla a otro servlet ya que necesitare hacer otras opreaciones con esta variable, como le puedo hacer para que conserve esta variable y poderla utilizar en otros servlets? no se si con sesiones pudiera utilizarlas..
solo que soy inesperto en sesiones y me gustaria y me ayudaran con un jemplo donde pasara las 2 variables y las conservara utilizando sesiones. por favor....


espero y me puedan ayudar..

o alguna otra forma?.. tal vez haciendo una clase especial donde guarde mis 2 variables... como le haria?..

saludos  :kicking:

Malber

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Como Almacenar Y Despues Obtener Una Variable
« Respuesta #1 en: Sábado 25 de Septiembre de 2004, 17:08 »
0
En la sesion sólo se deben meter en principio variables que vayan a ser necesitadas durante toda las sesión del usuario, como puede ser el nombre de usuario y cosas así, esas varaibles serán compartidas por todos los servlets.
Si lo que quieres es sólo que un servlet pase una variable sólo a otro y en ese caso concreto, eso sería contaminar la sesión.
Existen dos formas comunes de resolver eso (aunque hay alguna más)

Lo típico es como parámetro en el método GET con...
response.sendRedirect ( "MiServlet2?variable1=valor1&variable2=valor2" );
Eso sería estático, obviamente puedes introducir variables previamente recuperadas por request como por ejemplo:
response.sendRedirect ( "MiServlet2?variable1="+valor1+"&variable2="+valor2 );
o como a tí se te ocurra.


Para casos muy concretos se usa lo siguiente
HttpRequestDispatcher rd = request.getDispatcher( "MiServlet2" );
rd.forward(request,response);

creo que era así, si no pues busca documentación sobre HttpRequestDispatcher

Eso reenvía automáticamente todas las variables recibidas por el servlet. Tiene sus ventajas e inconvenientes a los que no voy a entrar.