论坛首页 入门技术论坛

JSP课堂---实验5

浏览 1961 次
该帖已经被评为新手帖
作者 正文
   发表时间:2008-03-28   最后修改:2009-11-04
欢迎访问: http://www.ptcms.cn


实验5:session的使用

实验内容:猜数字游戏
利用session对象,实现1个会话期间在多个页面之间传递数据












 页面构成:

 页面功能:
 guess.jsp
游戏开始页面。

产生一个1~100之间的随机整数
利用session保存2个属性:
猜的次数,初值为0,如:session.setAttribute("count",new Integer(0));
已产生的随机数,如:session.setAttribute("num",new Integer(number));
提供用户输入数据的表单,提交给result.jsp处理

 result.jsp
根据用户从guess.jsp提交来的数据判断并确定转至哪一个页面。

接收从guess.jsp提交来的用户猜的数据

取出保存在session对象上的之前产生的随机数
【注意:session.getAttribute()返回Object类型,在这里随机数是以Integer类型存入的,故取出时应:
Integer integer = (Integer) session.getAttribute("num");
再由Integer对象得到其int值: int realnumber = integer.intValue(); 】

如果 用户猜的数据 == 随机数 ,
则 session对象上用于统计猜测次数的属性 count 做加1操作
【同样的,先得到Integer类型,再转换为int型值,加1,然后再存入 count 属性,如下所示:
int n =((Integer)session.getAttribute("count")).intValue();         
         n = n+1;
         session.setAttribute("count",new Integer(n));

再转向猜测成功的页面 success.jsp
【 利用response.sendRedirect(“url”)方法 】

如果 用户猜的数据 > 随机数 ,
同上:session对象上的属性 count 做加1操作
再转向猜大了的页面large.jsp

如果 用户猜的数据 < 随机数 ,
同上:session对象上的属性 count 做加1操作
再转向猜小了的页面small.jsp

 success.jsp
猜对了的页面

取出session上的属性:随机数,猜测的次数
计算这次猜测过程耗时多久:
session.getLastAccessedTime() - session.getCreationTime()
显示相关的信息,猜了?次,用时?秒,这个随机数是?

 large.jsp
猜大了的页面

显示相应的消息,并提供表单让用户再次猜测,表单仍然提交给 result.jsp 处理

 small.jsp
猜小了的页面

显示相应的消息,并提供表单让用户再次猜测,表单仍然提交给 result.jsp 处理
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics