node.js实现tomcat经典例子猜数字

字体大小: 中小 标准 ->行高大小: 标准

学jsp都时候知道tomcat有一个seesion的经典例子,猜数字。

相关阅读:

http://www.linuxidc.com/Linux/2012-02/53528.htm

http://www.linuxidc.com/Linux/2012-02/53529.htm

http://www.linuxidc.com/Linux/2012-02/53530.htm

http://www.linuxidc.com/Linux/2012-02/53532.htm

tomcat 中有源码,JavaBean源码NumberGuessBean.java代码如下:

[java]
  1. package num;     
  2. import java.io.Serializable;   import java.util.Random;  
  3.    public class NumberGuessBean implements Serializable {  
  4.        private static final long serialVersionUID = 1L;  
  5.        private int answer;  
  6.     private String hint;       private int numGuesses;  
  7.     private boolean success;       private Random random = new Random();  
  8.        public NumberGuessBean() {  
  9.         reset();       }  
  10.        public int getAnswer() {  
  11.         return answer;       }  
  12.        public void setAnswer(int answer) {  
  13.         this.answer = answer;       }  
  14.        public String getHint() {  
  15.         return "" + hint;       }  
  16.        public void setHint(String hint) {  
  17.         this.hint = hint;       }  
  18.        public void setNumGuesses(int numGuesses) {  
  19.         this.numGuesses = numGuesses;       }  
  20.        public int getNumGuesses() {  
  21.         return numGuesses;       }  
  22.        public boolean getSuccess() {  
  23.         return success;       }  
  24.        public void setSuccess(boolean success) {  
  25.         this.success = success;       }  
  26.        public void setGuess(String guess) {  
  27.         numGuesses++;     
  28.         int g;           try {  
  29.             g = Integer.parseInt(guess);           } catch (NumberFormatException e) {  
  30.             g = -1;           }  
  31.            if (g == answer) {  
  32.             success = true;           } else if (g == -1) {  
  33.             hint = "a number next time";           } else if (g < answer) {  
  34.             hint = "higher";           } else if (g > answer) {  
  35.             hint = "lower";           }  
  36.     }     
  37.     public void reset() {           answer = Math.abs(random.nextInt() % 100) + 1;  
  38.         success = false;           numGuesses = 0;  
  39.     }   }  
JSP源码numguess.jsp代码如下:

[html]
  1. <%@ page import = "num.NumberGuessBean" %>     
  2. <jsp:useBean id="numguess" class="num.NumberGuessBean" scope="session"/>   <jsp:setProperty name="numguess" property="*"/>  
  3.    <html>  
  4. <head><title>Number Guess</title></head>   <body bgcolor="white">  
  5. <font size=4>     
  6. <% if (numguess.getSuccess()) { %>     
  7.   Congratulations!  You got it.     And after just <%= numguess.getNumGuesses() %> tries.<p>  
  8.      <% numguess.reset(); %>  
  9.      Care to <a href="numguess.jsp">try again</a>?  
  10.    <% } else if (numguess.getNumGuesses() == 0) { %>  
  11.      Welcome to the Number Guess game.<p>  
  12.      I'm thinking of a number between 1 and 100.<p>  
  13.      <form method=get>  
  14.   What's your guess? <input type=text name=guess>     <input type=submit value="Submit">  
  15.   </form>     
  16. <% } else { %>     
  17.   Good guess, but nope.  Try <b><%= numguess.getHint() %></b>.     
  18.   You have made <%= numguess.getNumGuesses() %> guesses.<p>     
  19.   I'm thinking of a number between 1 and 100.<p>     
  20.   <form method=get>     What's your guess? <input type=text name=guess>  
  21.   <input type=submit value="Submit">     </form>  
  22.    <% } %>  
  23.    </font>  
  24. </body>   </html>  
仿照tomcat 我写了一个node.jsp版本,也用到了node.js module的写法。

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/57852.html