国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP實現百萬富翁猜數字游戲

2020-07-26 23:15:36
字體:
來源:轉載
供稿:網友

本文實例為大家分享了JSP實現百萬富翁猜數字游戲的具體代碼,供大家參考,具體內容如下

設計一個web app,每次產生一個30以內的數字,給5次機會讓客戶猜測這個數字:

1)如果客戶猜的數字比產生的數字值大,則提示“大了”。
2)如果客戶猜的數字比產生的數字值小,則提示“小點”

猜對了就過關,猜錯Game Over,給玩家重玩的機會。

JSP代碼:

<%@ 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><%  String result=(String)request.getAttribute("result"); if(result!=null){  out.write("<font color='red'>"+result+"'</font>"); }%><%  Integer times=(Integer)request.getAttribute("times"); if(times!=null){  out.write("你還有"+(5-times)+"次機會!"); }%><br/><form action="/zxz/zxz" method="POST"> 請輸入你的數(20以下):<input type="text" name="Lucy" /><br/> <% if(times!=null){ %>  <input type="hidden" name="times" value="<%=times %>"/> <%  } %> <input type="submit" value="競猜" /></form></body></html>

Servlet代碼:

package hah;import java.io.IOException;import java.util.Random;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Servlet implementation class zxz */@WebServlet("/zxz")public class zxz extends HttpServlet { private static final long serialVersionUID = 1L; int answer; public void newGame() { Random random=new Random(); answer=random.nextInt(20); } public zxz() { newGame(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); String lucyStr=request.getParameter("Lucy"); Integer lucyNb=null; System.out.println("答案:"+answer); if(!lucyStr.equals("")) {  lucyNb=Integer.parseInt(lucyStr); } Integer times=1; String timeStr=request.getParameter("times"); if(timeStr!=null&&!timeStr.equals("")) {  times=Integer.parseInt(timeStr)+1; } if(times<5) {  String result="";  if(lucyNb>answer) {  result="大了";    }else if(lucyNb<answer) {  result="小了";  }else if(lucyNb==answer) {  result="中了";  times=null;  }  request.setAttribute("times", times);  request.setAttribute("result", result); }else {  newGame();  response.getWriter().write("游戲結束<a href='"+request.getContextPath()+"/One.jsp'>再來一把</a>");  return; } request.getRequestDispatcher("/One.jsp").forward(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); }}

總結:

a. 使用標簽hidden可以隱式傳遞數據而不被用戶發現 可以用來記錄次數 如:

<input type="hidden" name="times" value="<%=times %>"/>

b. Servlet是用來跳轉和執行邏輯代碼的,JSP是用來展示數據的
c. request.getParameter(“Lucy”);如果參數不存在則返回null的字符串值
d 跳轉有兩種方式 一個是頁面跳轉 地址要寫項目名+jsp或者servlet

另一個是轉發共享了request的域對象,地址可以直接寫jsp或者servlet 不要項目名 而且項目名和jsp或者servlet前都要加“/” 不然就是相對位置了

如:

<form action="/zxz/zxz" method="POST">//轉發request.getRequestDispatcher("/One.jsp"). forward(request, response);

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 延边| 伊通| 陕西省| 阳原县| 青州市| 津南区| 万山特区| 禄丰县| 锡林郭勒盟| 包头市| 铁岭市| 西华县| 双江| 大洼县| 湾仔区| 肥乡县| 舟曲县| 武冈市| 油尖旺区| 北流市| 建水县| 寻乌县| 蒲城县| 昆山市| 田林县| 佛坪县| 兰州市| 思茅市| 恭城| 云阳县| 广安市| 什邡市| 沈丘县| 喀喇沁旗| 鹤岗市| 天水市| 驻马店市| 淮南市| 古蔺县| 云阳县| 衡阳市|