经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Servlet » 查看文章
jsp+servlet实现猜数字游戏
来源:jb51  时间:2019/6/28 10:18:43  对本文有异议

jsp+servlet实现猜数字游戏主要用到了servlet方面的session,HttpServletResponse类中的sendRedirect()方法。

step1,客户访问或刷新getNumber.jsp页面时,随机给用户分配一个1-100之间的数字,将该数字存放到客户的session中。

  1. <%@ page language="java" import="java.util.*"
  2. contentType="text/html;charset=utf-8"%>
  3. <html>
  4. <head>
  5. </head>
  6. <body>
  7. <%
  8. String message=(String)session.getAttribute("message");
  9. %>
  10. <form action="HandleGuess" methods="post">
  11. <input type="text" name="guessnumber" size=8>
  12. <%=message %>
  13. <input type="submit" value="提交">
  14. </form>
  15. <form action="getNumber.jsp" method="post">
  16. <input type="submit" value="重新得到新的随机数">
  17. </form>
  18. </body>
  19. </html>

step2,然后用户超廉价到inputNumber.jsp页面上,用户输入自己的猜测,并提交给HandleGuess类负责创建。

  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"
  2. contentType="text/html;Charset=utf-8"%>
  3. <html>
  4. <head>
  5. </head>
  6. <body>
  7. <% session.setAttribute("message", "请您猜数");
  8. // HttpSession session =request.getSession(true);
  9. int randomNumber=(int)(Math.random()*100)+1;//获取一个随机数
  10. session.setAttribute("saveNumber",new Integer(randomNumber));
  11. %>
  12. <p>访问或刷新该页面可以随机跌倒一个1,到100之间的数字
  13. <br>单击下面链接可以访问去猜数字
  14. <a href="inputNumber.jsp" rel="external nofollow" >去猜数字</a>
  15. </body>
  16. </html>

step3,该servlet类为:

  1. import java.io.IOException;
  2. import java.io.PrintWriter;
  3. import javax.servlet.ServletException;
  4. import javax.servlet.http.HttpServlet;
  5. import javax.servlet.http.HttpServletRequest;
  6. import javax.servlet.http.HttpServletResponse;
  7. import javax.servlet.http.HttpSession;
  8. public class HandleGuess extends HttpServlet {
  9. public void doPost(HttpServletRequest request,HttpServletResponse response)
  10. throws ServletException,IOException{
  11. request.setCharacterEncoding("utf-8");
  12. response.setContentType("text/html;charset=utf-8");
  13. PrintWriter out=response.getWriter();
  14. //获取客户猜测提交的数
  15. int guessNumber=Integer.parseInt(request.getParameter("guessnumber"));
  16. //获取客户的会话对象
  17. HttpSession session=request.getSession();
  18. Integer integer=(Integer)session.getAttribute("saveNumber");
  19. int realNumber=integer.intValue();
  20. System.out.println(realNumber);
  21. System.out.println(guessNumber);
  22. if(guessNumber>realNumber){
  23. session.setAttribute("message", "您猜大了");
  24. System.out.println("您猜大了---no");
  25. response.sendRedirect("inputNumber.jsp");
  26. }
  27. else if(guessNumber<realNumber){
  28. session.setAttribute("message", "您猜小了");
  29. System.out.println("您猜小了---no");
  30. response.sendRedirect("inputNumber.jsp");
  31. }
  32. else{
  33. session.setAttribute("message", "您猜对了");
  34. System.out.println("您猜对了");
  35. response.sendRedirect("inputNumber.jsp");
  36. }
  37. }
  38. public void doGet(HttpServletRequest request,HttpServletResponse response)
  39. throws ServletException,IOException{
  40. doPost(request,response);
  41. }
  42. }

step4,web.xml配置,省略。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号