1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
  2.  
  3. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  4. <html>
  5. <head>
  6. <title>百万富翁数字竞猜游戏</title>
  7. </head>
  8.  
  9. <body>
  10. <%
  11. //从request域中取出信息
  12. String msg = (String)request.getAttribute("msg");
  13. if(msg!=null){
  14. out.write("<font color='red'>"+msg+"</font>");
  15. }
  16. %>
  17. <%
  18. //获取竞猜次数
  19. Integer times = (Integer)request.getAttribute("times");
  20. if(times!=null){
  21. out.write(",你还有"+(5-times)+"次机会!");
  22. }
  23. %>
  24.  
  25. <form action="/GuessServlet" method="post">
  26. 请输入30以下的整数:<input type="text" name="lucyNo"/><br/>
  27. <%
  28. if(times!=null){
  29. %>
  30. <input type="hidden" name="times" value="<%=times %>"/>
  31. <%
  32. }
  33. %>
  34. <input type="submit" value="开始竞猜"/>
  35. </form>
  36. </body>
  37. </html>
  1. package com.loaderman.demo;
  2.  
  3. import javax.servlet.ServletException;
  4. import javax.servlet.http.*;
  5. import java.io.IOException;
  6. import java.util.Random;
  7.  
  8. public class TestServlet extends HttpServlet {
  9.  
  10. //产生一个幸运数字
  11. int answer;
  12.  
  13. /**
  14. * 新游戏方法。产生一个新的幸运数字
  15. */
  16. public void newGame(){
  17. Random random = new Random();
  18. answer = random.nextInt(30);
  19. }
  20.  
  21. public TestServlet(){
  22. //第一次访问
  23. newGame();
  24. }
  25.  
  26. public void doGet(HttpServletRequest request, HttpServletResponse response)
  27. throws ServletException, IOException {
  28. response.setContentType("text/html;charset=utf-8");
  29.  
  30. //1.接收输入的数字
  31. String lucyNoStr = request.getParameter("lucyNo");
  32. System.out.println("答案:"+answer);
  33. Integer lucyNo = null;
  34. //2.判断幸运数字和用户的数字
  35. //2.1 把用户输入的数字转成整数
  36. if(lucyNoStr!=null || !lucyNoStr.equals("")){
  37. lucyNo = Integer.parseInt(lucyNoStr);
  38. }
  39.  
  40. //标记记录当前竞猜的次数
  41. Integer times = 1;//初始值
  42.  
  43. //接收客户当前竞猜次数
  44. String timesStr = request.getParameter("times");
  45. if(timesStr!=null && !timesStr.equals("")){
  46. times = Integer.parseInt(timesStr)+1;
  47. }
  48.  
  49. if(times<5){
  50. String msg = "";
  51. //比较
  52. if(lucyNo>answer){
  53. //大了
  54. msg = "可惜,大了点";
  55. }else if(lucyNo<answer){
  56. //小了
  57. msg = "可惜,小了点";
  58. }else if(lucyNo==answer){
  59. //等于,中奖
  60. msg = "恭喜你,中得1000000元现金大奖,请带身份证到xxx地方领奖!";
  61. times = null;
  62. }
  63. //把当前竞猜的次数放入域对象
  64. request.setAttribute("times", times);
  65. //把信息放入域对象中
  66. request.setAttribute("msg", msg);
  67. }else{
  68. //产生新的幸运数字
  69. newGame();
  70. //游戏结束
  71. response.getWriter().write("游戏结束。<a href='"+request.getContextPath()+"/guess.jsp'>再来一盘</a>");
  72. return;
  73. }
  74. //转发
  75. request.getRequestDispatcher("/05.guess.jsp").forward(request, response);
  76. }
  77.  
  78. public void doPost(HttpServletRequest request, HttpServletResponse response)
  79. throws ServletException, IOException {
  80. doGet(request, response);
  81. }
  82. }

JSP学习案例--,竞猜游戏的更多相关文章

  1. JSP学习网站

    JSP学习网站 http://www.yiibai.com/jstl/ http://www.w3cschool.cc/jsp/jsp-jstl.html

  2. JSP学习笔记

    JSP学习笔记 Jsp网页主要分为Elements与Template Data两部分. Template Data:JSP Container不处理的部分,例如HTML内容 Elements:必须经由 ...

  3. Sql Server触发器案例(初学者学习案例)

    万事都是从最简单的一句“hello world”开始,所以我接下里介绍的sql触发器学习案例也从最简单的案例来说明分析: 1.首先创建表,这几张表你们也许很熟,在百度搜触发器案例都是使用这2张表 Cr ...

  4. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  5. JSP 学习二

    在基于昨天对JSP学习的基础上,今天我们来学习JSP的指令和JSP 对中文的处理. 一.JSP指令简介 JSP 指令是为JSP引擎而设计,它并不直接产生任何可见的输出,而只是告诉引擎如何处理JSP页面 ...

  6. java web jsp学习笔记--概述-常用语法,指令,动作元素,隐式对象,域对象

     JSP学习笔记 1.什么是jsp JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术.JSP/Servlet规范.JS ...

  7. JSP学习(一)JSP基础语法

    JSP基础语法 1.JSP模版元素 JSP页面中的HTML内容称之为JSP模版元素. JSP模版元素定义了网页的基本骨架,即定义了页面的结构和外观. <%@ page language=&quo ...

  8. (转) jsp学习笔记

    fromhttp://www.cnblogs.com/tao975/p/4445070.html 什么是JSP JSP的优势 JSP的劣势 JSP与PHP的比较 JSP工作原理 JSP的九大内置对象 ...

  9. 在控制台中实现“单词竞猜”游戏 C# 猜词游戏

    场景 设计规则 a) 这是一个单人玩的游戏. b) 可以分三个级别,分别是高级.中级.低级.不同级别对应的单词系列也不一样.要求一旦玩家选定了要玩的级别,应当先提示它关于此级别最高分是多少,是谁创下的 ...

随机推荐

  1. BLE 5协议栈-链路层

    文章转载自:http://www.sunyouqun.com/2017/04/page/3/ 链路层LL(Link Layer)是协议栈中最重要的一层. 链路层的核心是状态机,包含广播.扫描.发起和连 ...

  2. string类的总结

    一.string类头文件:#include <string>;using namespace std; 二.string类方法: 1.获取string的字符串长度:size(),size返 ...

  3. Centos 安装 kubectl kubelet kubeadm

    cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://m ...

  4. Python:面向对象编程2

    types.MethodType __slot__ @property,  @xxx.setter Python的多重继承和MinIn 如何在class创建后,给实例绑定属性和方法? (动态绑定/定义 ...

  5. ogg中断处理

    ogg因为网络问题导致中断无法启动,需要重新抽取数据: --前滚抽取进程生成新的trail文件 alter extract ext147 etrollover alter ext147 extseqn ...

  6. mysql 模拟oracle中的序列

    因业务需要,把oracle 数据据转成mysql,同时oracle中程序本来一直在用 序列, mysql中没有,所以需要在mysql中新建一个表进行模拟, CREATE TABLE `sequence ...

  7. nginx准备

    iptables相关命令 iptables  -L查看相关规则 iptables -F关闭所有的防火墙规则 getenforce 查看selinux是否开启 ,如果已经开启,可以通过setenforc ...

  8. 【数据库】-各类数据库链接驱动和URL的书写格式

    oracle: driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:152 ...

  9. LYK loves music

    Description LYK喜欢听音乐,它的歌单里共有n首音乐,而且它每次听音乐时都是连续地听m首, 它甚至能记得自己给每首音乐的评分ai. 现在它想选择一首歌开始听,使得接下来连续m首歌的评分&l ...

  10. 微信小程序_(组件)flex布局

    小程序建议使用flex布局进行排版 flex是一个盒装弹性布局 flex是一个容器,所有子元素都是他的成员 定义布局:display:flex flex容器的属性: 一.flex-direction: ...