Dudas con serlvet y jsp en java

HG_Tevez

Buenas, como dice el titulo tengo una duda con serlvet y jsp. Me explico:

Tengo un boton que genera un codigo de 5 numeros (esto es un jsp con un serlvet) y ese codigo quiero que se muestre en otro jsp con su servlet particular. Mi pregunta es: Como muestro el codigo generado en el segundo jsp?

Gracias de antemano

ejemplo grafico:

Al pulsar el boton de este jsp

genera un un codigo y lo quiero que muestre aqui:

Como se hace?

bLero

No sé si te llego a entender, pero lo que tienes que hacer es almacenar el código en algún sitio para poder mostrarlo en la siguiente página (otro servlet / jsp).

El dónde almacenar ese código puede ser en una clase, sesión, cookie, pasarlo en la query string, etc...

JuAn4k4

Servlet1 -> Muestra la página con el botón

El botón es un:

GET - Servlet2 ->

Muestra la página con el código.

¿ Utilizas algún framework ? Si es así, sería recomendable seguir sus instrucciones ( por ejemplo en spring se utiliza el "Model" )

En el servlet:

request.setAttribute("codigo", "12345");

En el controller de spring

model.addAttribute("codigo", "12345");

En el jsp:

Sin jstl/jsp el, puedes utilizar scriptlets (obsoletos y no recomendados por el peligro que llevan de mezclar la vista con la lógica, y con muchas cosas más):

<%=request.getAttribute("codigo")%>

Con jsp el:

${codigo}

Con jstl y jsp el (recomendado):

<c:out value="${codigo} />
1 respuesta
HG_Tevez

#3 No utilizo ningun Framework, eclipse y tomcat 8 nada mas

Como haces para meter el codigo de esa manera?

Arreglado muchas gracias!!

JuAn4k4

Cuando estas escribiendo el comentario, justo encima tienes unos botones para insertar tags.

[ code ]Tu código aquí[ /code ]

Quitandole los espacios a los tags.

HG_Tevez

Por no abrir otro tema, ahora trata sobre otro tema, sobre base de datos:

Tengo una tabla llamada X que tiene 2 campos id (autonumerico e int) y clave, y tengo otra tabla llamada usuario con id (autonumerico) email, descripcion y claveX(int).

Como hago para insertar el id de X en el campo claveX de la tabla usuario?

Muchas gracias de antemano

1 respuesta
bornex

#6 Primero de todo, ¿usas JPA? No tengo ni idea de como estas trabajando pero te aconsejo el uso de Oracle Data Modeler para modelar E/R o MySQLWorkbench, te van a facilitar mucho la vida y a responder esa pregunta que estas haciendo ahora mismo.

Bueno, uses o no JPA, lo que tienes que hacer es una relación entre las dos tablas.

Si la tabla Usuarios es una entidad débil con respecto a la tabla X, no hará falta que crees un atributo claveX en usuarios, ya que por la relación que existe entre ellas, la tabla Usuario heredará el atributo Clave Primaria de la tabla X, en este caso supongo que será claveX.

Por otro lado, si la relacion es de uno a muchos entre la tabla X y la de usuarios, también se heredarán los atributos en la tabla del lado del muchos.

No se si esto soluciona tu problema, pero tienes varias vías de arreglarlo dependiendo del modelo relacional que hayas construido.

Cuentanos como va la cosa.

1 respuesta
HG_Tevez

#7 Ya esta solucionado

Usuarios habituales

  • HG_Tevez
  • bornex
  • JuAn4k4
  • bLero