Está en la página 1de 3

Para realizar esto necesitamos crear una clase que maneje el dato del usuario y la verificacin del nmero

dado. El cdigo del bean es el siguiente:

package num;import java.util.*;public class NumeroBean { int respuesta; boolean adivino; String pista; int numIntentos;

public NumeroBean() { reset(); }

public void setNumero(String numero) { numIntentos++; int g;

try { g = Integer.parseInt(numero); } catch (NumberFormatException e) { g = -1; } if (g == respuesta) { adivino = true; } else if (g == -1) { pista = "un nmero"; } else if (g < respuesta) { pista = "uno ms grande"; } else if (g > respuesta) {

pista = "uno ms chico"; } }

public boolean getAdivino() { return adivino; }

public String getPista() { return "" + pista; }

public int getNumIntentos() { return numIntentos; }

public void reset() { respuesta = Math.abs(new Random().nextInt() % 100) + 1; adivino = false; numIntentos = 0; } } En el jsp llamado adivinaNumero.jsp, se utilizan los mtodos definidos en el bean, de esta manera se puede ver como es el uso de elementos script en las pginas JSP. El siguiente cdigo es el encargado de mostrar los mensajes al usuario con los valores que se definen en la clase NumeroBean.

<%@ page import = "num.NumeroBean" %><jsp:useBean id="nbean" scope="session" /> <jsp:setProperty name="nbean" property="*" /><html>

<head><title>Adivina el nmero</title></head> <body bgcolor="white"> <font size=4> <% if (nbean.getAdivino()) {%> Felicidades! adivinaste. Despus de <%= nbean.getNumIntentos()%> intentos.<p> <% nbean.reset();%> <a href="adivinaNumero.jsp">Intentar de nuevo</a>? <% } else if (nbean.getNumIntentos() == 0) {%> Bienvenido al juego de adivinar el nmero.<p> En qu nmero estoy pensando? del 1 al 100.<p> <form method=get> Escribe el nmero? <input type=text name=numero> <input type=submit value="Submit"> </form> <% } else {%> Bien, pero no. Intenta con <b><%= nbean.getPista()%></b>. T has hecho <%= nbean.getNumIntentos()%> intentos.<p> En qu nmero estoy pensando? del 1 al 100.<p> <form method=get> Escribe el nmero? <input type=text name=numero> <input type=submit value="Submit"> </form> <% }%> </font> </body> </html>

También podría gustarte