JSP实现百万富翁猜数字游戏
本文实例为大家分享了JSP实现百万富翁猜数字游戏的具体代码,供大家参考,具体内容如下
设计一个webapp,每次产生一个30以内的数字,给5次机会让客户猜测这个数字:
1)如果客户猜的数字比产生的数字值大,则提示“大了”。
2)如果客户猜的数字比产生的数字值小,则提示“小点”
猜对了就过关,猜错GameOver,给玩家重玩的机会。
JSP代码:
<%@pagelanguage="java"contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>Inserttitlehere <% Stringresult=(String)request.getAttribute("result"); if(result!=null){ out.write(""+result+"'"); } %> <% Integertimes=(Integer)request.getAttribute("times"); if(times!=null){ out.write("你还有"+(5-times)+"次机会!"); } %>
请输入你的数(20以下):
<% if(times!=null){ %>"/> <% } %>
Servlet代码:
packagehah;
importjava.io.IOException;
importjava.util.Random;
importjavax.servlet.ServletException;
importjavax.servlet.annotation.WebServlet;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
/**
*Servletimplementationclasszxz
*/
@WebServlet("/zxz")
publicclasszxzextendsHttpServlet{
privatestaticfinallongserialVersionUID=1L;
intanswer;
publicvoidnewGame(){
Randomrandom=newRandom();
answer=random.nextInt(20);
}
publiczxz(){
newGame();
}
protectedvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
response.setContentType("text/html;charset=utf-8");
StringlucyStr=request.getParameter("Lucy");
IntegerlucyNb=null;
System.out.println("答案:"+answer);
if(!lucyStr.equals("")){
lucyNb=Integer.parseInt(lucyStr);
}
Integertimes=1;
StringtimeStr=request.getParameter("times");
if(timeStr!=null&&!timeStr.equals("")){
times=Integer.parseInt(timeStr)+1;
}
if(times<5){
Stringresult="";
if(lucyNb>answer){
result="大了";
}elseif(lucyNb再来一把");
return;
}
request.getRequestDispatcher("/One.jsp").forward(request,response);
}
protectedvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{
doGet(request,response);
}
}
总结:
a.使用标签hidden可以隐式传递数据而不被用户发现可以用来记录次数如:
"/>
b.Servlet是用来跳转和执行逻辑代码的,JSP是用来展示数据的
c.request.getParameter(“Lucy”);如果参数不存在则返回null的字符串值
d跳转有两种方式一个是页面跳转地址要写项目名+jsp或者servlet
另一个是转发共享了request的域对象,地址可以直接写jsp或者servlet不要项目名而且项目名和jsp或者servlet前都要加“/”不然就是相对位置了
如:
//转发 request.getRequestDispatcher("/One.jsp"). forward(request,response);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。