当前位置: 首页 > news >正文

用servlet实现一个简单的猜数字游戏。

     需要两个页面,一个jsp页面(guess.jsp)和servlet页面(servlet)。

一.jsp页面

在jsp页面中需要实现:

1.创建随机数并且保存在session中。

2.做个form表单提交猜的数字给servlet页面。

<%@page import="java.util.Random"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>​
<form action="servlet" method="post">
<%
Random random=new Random();
int RN=random.nextInt(100)+1;
session.setAttribute("RN", RN);
%>
有一个1~100的数字,尝试猜到它。<br>
输入你猜的数字:<input type="text" name="gn"><br>
<input type="submit"value="提交">
</form>
</body>
</html>

二.servlet页面

1.获取传来的数字,注意类型转换。

2.比较大小,打印出表单再猜或者猜中结果。

package lh.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/*** Servlet implementation class servlet*/
@WebServlet("/servlet")
public class servlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public servlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.getWriter().append("Served at: ").append(request.getContextPath());}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubint guessnumber=Integer.parseInt(request.getParameter("gn"));HttpSession session=request.getSession();int RN=(Integer)session.getAttribute("RN");response.setContentType("text/html; charset=UTF-8");PrintWriter out=response.getWriter();if(guessnumber==RN){out.print("恭喜猜对,随机数为:"+RN);}else if(guessnumber>RN){out.print("猜大了。");out.print("<form action='servlet' method='post'>");out.print("输入你猜的数字:<input type='text'name='gn'>");out.print("<input type='submit'value='提交'>");out.print("</form");}else{out.print("猜小了。");out.print("<form action='servlet' method='post'>");out.print("输入你猜的数字:<input type='text'name='gn'>");out.print("<input type='submit'value='提交'>");out.print("</form");}}}

运行结果:

http://www.lryc.cn/news/195996.html

相关文章:

  • 前端取消请求
  • 关于6轴球腕机械臂的肩部奇异描述纠正
  • Python —— hou.Node class
  • MATLAB——RBF、GRNN和PNN神经网络案例参考程序
  • E138: Can‘t write viminfo file
  • Compose Canvas基础(2) 图形转换
  • 【计算机网络笔记】分组交换中的报文交付时间计算例题
  • JVS-rules规则引擎,解决大数据风控的自动化决策利器
  • dvaJs在react 项目中的简单使用
  • 如何将las数据转换为osgb数据?
  • 创新与重塑,佛塑科技打造集团型 CRM 建设标杆
  • STM32CUBEMX_DMA串口空闲中断接收+接收发送缓冲区
  • 酸蚀刻对钛医药材料纳米形态表面特性及活化能的影响
  • iOS代码混淆工具推荐:IPA Guard详细介绍
  • Vue检测数据的原理
  • 队列的运行算法
  • KVM/qemu安装UOS 直接让输入用户密码
  • 画一条0.5px的线、设置小于12px的字体、解决 1px 问题
  • Unity中Shader的深度写入ZWrite
  • Jetson nano 系列之7—jetson 通过rtp将视频发给远程host
  • 有哪些值得推荐的优秀 HTMLCSS 网站前端设计的网络资源(博客、论坛)?
  • RTSP/Onvif安防视频平台EasyNVR级联至EasyNVS系统不显示通道,是什么原因?
  • 点云处理【三】(点云降采样)
  • GB/T 41510-2022 起重机械安全评估规范 通用要求 摘要
  • 【vr】【unity】白马VR课堂系列-VR开发核心基础05-主体设置-手柄对象的引入和设置
  • UE5发布Android屏幕适配实践(Blueprint)
  • Spanner: Google’s Globally Distributed Database
  • Java基础——了解进制和位运算
  • mybatisplus 自定义mapper加多表联查结合分页插件查询时出现缺失数据的问题
  • 陪诊系统|陪诊软件革新陪诊体验解决病患难题