1.       这是一个猜数字的游戏,通过使用JSP调用JavaBean 
2.       需要两个文件,number.jsp和NumberGuessBean.java 
3.       先看number.jsp代码: 
  
<html> 
<jsp:useBean id="number" class="NumberGuessBean" scope="session" /> 
<jsp:setProperty name="number" property="*" /> 
<% 
       if(number.getNumGuesses()==0) 
       { 
%> 
              <B>Welcome to the Number Guess game.</B> 
              <br> 
              <B>I'm thinking of a number between 1 and 100.</B> 
              <br> 
              <b>What's your guess?</b>  
              <form method=post> 
              <input type=text name="guess"> 
              <input type=submit value=submit> 
              </form> 
       <% 
       } 
       else if(number.getSuccess()) 
       {      
       %> 
              Congratulations! You got it. And after just <%=number.getNumGuesses()%> tries. 
              Care to <a href=number.jsp>try again</a>?  
       <% 
              number.reset(); 
       } 
       else 
       { 
       %> 
       Good guess, but nope. Try <%=number.getHint()%>. You have made <%=number.getNumGuesses()%> guesses. 
       <br>I'm thinking of a number between 1 and 100. 
       <br> 
       What's your guess?   
       <form method=post><input type=text name="guess">  
       <input type=submit value=submit> 
       </form> 
       <% 
       } 
       %> 
</html> 
  
4.       NumberGuessBean.java代码如下: 
import java.util.*; 
  
public class NumberGuessBean { 
  
  int answer; 
  boolean success; 
  String hint; 
  int numGuesses; 
  
  public NumberGuessBean() { 
    reset(); 
  } 
  
  public void setGuess(String guess) { 
    numGuesses++; 
  
    int g; 
    try { 
      g = Integer.parseInt(guess); 
    } 
    catch (NumberFormatException e) { 
      g = -1; 
    } 
  
    if (g == answer) { 
      success = true; 
    } 
    else if (g == -1) { 
      hint = "a number next time"; 
    } 
    else if (g < answer) { 
      hint = "higher"; 
    } 
    else if (g > answer) { 
      hint = "lower"; 
    } 
  } 
  
  public boolean getSuccess() { 
    return success; 
  } 
  
  public String getHint() { 
    return "" + hint; 
  } 
  
  public int getNumGuesses() { 
    return numGuesses; 
  } 
  
  public void reset() { 
    answer = Math.abs(new Random().nextInt() % 100) + 1; 
    success = false; 
    numGuesses = 0; 
  } 
} 
  
  
  
  
  
 
  
 
  |