【JavaWeb】简单版猜骰子大or小游戏
本任务编写一个Servlet实现猜骰子大小游戏。使用HttpSession对象存储随机数,当使用GET请求访问它时,生成一个1~6之间的随机整数,将其作为一个属性存储到用户的会话对象中,同时提供一个表单供用户输入猜测的“大”or“小”。如果该Servlet接收到一个POST请求,它将比较用户猜的大小和随机生成的数是否符合条件,给出结果,并允许用户重新猜。
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;@WebServlet("/guess-number")
public class GuessNumberServlet extends HttpServlet {private static final long serialVersionUID = 1L;public GuessNumberServlet() {super();}public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {int magic=(int)(Math.random()*6+1);//生成一个1~6之间的随机整数HttpSession session=request.getSession();session.setAttribute("num", new Integer(magic));response.setContentType("text/html;charset=UTF-8");PrintWriter out=response.getWriter();out.println("<html><body>");out.println("一个骰子,通常有6种点数。我们将1、2、3记作“小”,将4、5、6记作“大”。我投一个点,你来猜“小”了还是“大”了。");out.println("<form action='guess-number' method='post'>");out.println("<input type='text' name='guess'/>");out.println("<input type='submit' value='确定'/>");out.println("</form>");out.println("</body></html>");}public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {String guess=request.getParameter("guess");//得到输入的值byte [] bytes =guess.getBytes("ISO-8859-1");guess= new String(bytes, "utf-8");HttpSession session=request.getSession();int magic=(Integer)session.getAttribute("num");response.setContentType("text/html;charset=UTF-8");PrintWriter out=response.getWriter();out.println("<html><body>");if(guess.equals("大")&&magic>3) {session.invalidate();//销毁对话out.println("祝贺你,猜对了!");out.println("<a href='guess-number'>再猜一次</a>"); //返回猜界面,重新随机一个数}else if(guess.equals("小")&&magic<4) {out.println("祝贺你,猜对了!");out.println("<a href='guess-number'>再猜一次</a>"); //返回猜界面,重新随机一个数}else {out.println("猜错了,请重猜");}out.println("<form action='guess-number' method='post>");out.println("<input type='text' name='guess'/>");out.println("<input type='submit' value='确定'/>");out.println("</form>");out.println("</body></html>");}}
运行结果:
【JavaWeb】简单版猜骰子大or小游戏相关推荐
- Golang + Laya引擎实现的简易版“球球大作战”小游戏
开发动机 学习Golang语言以来,先后实现了个人博客,生活美食推荐系统,以及一些如日志收集工具等开发能用到的小工具,但还没写过游戏.前不久,利用闲暇时间,写了套简易的分布式游戏框架,心想写好了不投入 ...
- 云开发版合成大西瓜小游戏微信小程序源码 微信游戏小程序附带流量主功能
这是一款云开发版的合成大西瓜小游戏微信小程序源码,微信游戏小程序源码.该小游戏玩法简单,只需要拖动同样的水果落下合成新品众的水果,最终合成大西瓜,玩法酷似俄罗斯方块,相当于换一种形式的俄罗斯方块,简单 ...
- C语言作业掷骰子,C语言大作业(掷骰子押宝小游戏).doc
#include int money = 300; intpc_money = 300; void show(); //声明界面显示函数 void play(); //声明玩法函数 void getC ...
- 最新微信合成大西瓜小游戏(合成版)源码+附带流量主功能
正文: 这是一款云开发版的合成大西瓜小游戏微信小程序源码,微信游戏小程序源码. 该小游戏玩法简单,只需要拖动同样的水果落下合成新品众的水果,最终合成大西瓜,玩法酷似俄罗斯方块,相当于换一种形式的俄罗斯 ...
- 微信游戏-合成大西瓜小游戏源码 附带流量主功能
简介: 这是一款云开发版的合成大西瓜小游戏微信小程序源码,微信游戏小程序源码.该小游戏玩法简单,只需要拖动同样的水果落下合成新品众的水果,最终合成大西瓜,玩法酷似俄罗斯方块,相当于换一种形式的俄罗斯方 ...
- html 转盘游戏开发,【scratch】简单的大转盘小游戏
彩色大转盘 大家是否在各种饭店.商家.网页上看到过大转盘的抽奖活动装置? 对就是这种!!!有各种奖品以及充斥着整个版面50%+的谢谢参与. 我们的小码农也做了一款简单的并且没有(大概)谢谢参与的大转盘 ...
- 基于Java实现的贪吃蛇大作战小游戏
贪吃蛇大作战小游戏 整体思路与架构 本项目主要分为三个部分,即UI界面.游戏逻辑与网络传输. UI界面部分,主要是为了实现不同界面之间的切换.包括了注册登陆窗口(loginFrame)与游戏主窗口(G ...
- vue+netty+redis微信猜数对战小游戏
vue+netty+redis微信猜数对战小游戏 GITHUB 需求列表 微信登录 每小时一次领取积分1000 分享给好友赢1000积分,每微信账号一次 积分小于-10000不可进行游戏 排行榜ran ...
- 微信小游戏 腾讯课堂《白鹭教育 - 成语大挑战小游戏开发》学习笔记
腾讯课堂<白鹭教育 - 成语大挑战小游戏开发>:https://ke.qq.com/course/287266 学习笔记 首先这个视频课程简单介绍了一个小游戏的制作,包括新建项目.适配模式 ...
最新文章
- swift 之SnapKit 动画
- React兄弟组件之间通信
- IDEA报错Web server failed to start. Port 8080 was already in use的解决方法
- web.xml里filter-mapping中的dispatcher作用
- 【转自lzplzp】pair project总结
- linux把2块盘挂到一个分区,linux系统如何挂载第二块硬盘
- 动感灯箱制作流程培训_广告立体灯箱的特点有哪些?
- 【前端知识学习】HTML5 学习笔记
- RecyclerView(六)设置下拉刷新
- 前端:JS/29/实例:控制div显示_滚动的图片
- vm15不支持linux,每个处理程序的多个VMExtensions不支持操作系统类型'Linux
- Java 阻塞队列实现原理分析
- linux0.11内核完全注释读书笔记
- 设计鲁棒性的方法:输入一个链表的头结点,逆序遍历打印该链表出来
- gem5源码解读se.py以及simulate.py(一)
- 自己开发的天视通局域网电脑监控软件,需要的来下载
- H5U PLC定位控制功能块(EtherCAT总线)
- 谷歌中设置utf8编码
- 腾讯bugly热更新接入
- 3.提取线稿(PS)