jsp实验11 JavaBean

二、实验项目内容(实验题目)

编写代码,掌握javabean的用法。【参考课本 上机实验 5.5.2 】

三、源代码以及执行结果截图:

源代码:

Memory.java

package sea.water;

import java.util.ArrayList;

import java.util.Random;

public class Memory {

                   static ArrayList<String> list = new ArrayList<String>();

                   static {

                     list.add("★");

                     list.add("●");

                     list.add("▲");

                     list.add("■");

                     list.add("◆");

                   }

                   int grade = 5;

                   String testString;

                   boolean isGivenTestString = false;

                   public void setGrade(int n) {

                     grade = n;

                   }

                   public int getGrade() {

                     return grade;

                   }

                   public void giveTestString() {

                     StringBuffer buffer = new StringBuffer();

                     Random random = new Random();

                     for(int i=0;i<grade;i++) {

                            int index = random.nextInt(list.size());

                            String str = list.get(index);

                            buffer.append(str);

                     }

                     testString = new String(buffer);

                   }

                   public void setIsGivenTestString(boolean b) {

                     isGivenTestString = b;

                   }

                   public boolean getIsGivenTestString() {

                     return isGivenTestString;

                   }

                   public String getTestString() {

                     return testString;

                   }

}

choiceGrade.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

<style type="text/css">

   #textStyle{

      font-family: 宋体;

      font-size: 26;

      color: blue;

   }

</style>

</head>

<body bgcolor="#ffccff">

   <form action="giveTest.jsp" id="textStyle" method="post">

      <input type="radio" name="grade" value="5" />初级

      <input type="radio" name="grade" value="7" checked="ok" />中级

      <input type="radio" name="grade" value="10" />高级

      <br><input type="submit" id="textStyle" value="提交" />

      <input type="reset" id="textStyle" value="重置" />

   </form>

</body>

</html>

giveTest.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

<style type="text/css">

   #tomStyle{

      font-family: 宋体;

      font-size: 36;

      color: blue;

   }

</style>

</head>

<jsp:useBean id="memory" class="sea.water.Memory" scope="session" />

<body bgcolor="#ffccff">

   <%

      String grade = request.getParameter("grade");

      String testString = "";

      if(grade == null){

        memory.setGrade(memory.getGrade());

      }else{

        memory.setGrade(Integer.parseInt(grade));

      }

      if(memory.getIsGivenTestString() == false){

        memory.giveTestString();

        testString = memory.getTestString();

        memory.setIsGivenTestString(true);

      }

      else if(memory.getIsGivenTestString() == true){

        response.sendRedirect("answerTest.jsp");

      }

   %>

   <p id="tomStyle">5秒记住您看到的字符序列:<br>

      <%= testString %>

      <br>5秒后,将转到答题页.

      <% response.setHeader("refresh", "5"); %>

   </p>

</body>

</html>

answerTest.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

<style type="text/css">

   #tomStyle{

      font-family: 宋体;

      font-size: 26;

      color: blue;

   }

</style>

</head>

<jsp:useBean id="memory" class="sea.water.Memory" scope="session" />

<body bgcolor="#ffccff">

   <form action="judgeAnswer.jsp" id="tomStyle" method="post">

      您记住的字符序列是怎样的,请选择:

      <%

        int n = memory.getGrade();

        memory.setIsGivenTestString(false);

        for(int i = 1;i<=n;i++){

           out.print("<br>"+i+"个字符:");

           out.print(

              "<input type=radio id=tomStyle name=R"+ i +" value=''/>"+  

              "<input type=radio id=tomStyle name=R"+ i +" value='●'/>●"+

              "<input type=radio id=tomStyle name=R"+ i +" value='▲'/>▲"+

              "<input type=radio id=tomStyle name=R"+ i +" value='■'/>■"+

              "<input type=radio id=tomStyle name=R"+ i +" value=''/>"

           );

        }

      %>

      <br><input type="submit" id="tomStyle" value="提交" />

      <input type="reset" id="tomStyle" value="重置" />

   </form>

</body>

</html>

judgeAnswer.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

<jsp:useBean id="memory" class="sea.water.Memory" scope="session" />

<body bgcolor="white">

   <p style="font-family: 宋体;font-size: 26;color: blue;">

      <%

        memory.setIsGivenTestString(false);

        request.setCharacterEncoding("UTF-8");

        int n = memory.getGrade();

        StringBuffer buffer = new StringBuffer();

        for(int i = 1;i <= n;i++){

           buffer.append(request.getParameter("R" + i));

           out.print("" + request.getParameter("R" + i));

        }

        String userAnswer = new String(buffer);

        String testString = memory.getTestString();

        if(testString.equals(userAnswer)){

           out.print("您记忆不错");

        }else{

           out.print("您没记忆住!答案是:<br>"+testString);

        }

      %>

      <br><a href="giveTest.jsp">返回,继续练习记忆</a>

      <br><a href="choiceGrade.jsp">重新选择级别</a>

   </p>

</body>

</html>

效果图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/2540.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

280 Stylized Desert Beach Textures - Sand Cracked Sand Water More v1.1.0

280多种风格化的沙子、破裂的沙子、土壤、沙质岩石和其他沙质纹理的集合,用于沙漠和海滩风格化/幻想/rpg风格的游戏环境。 这款由game Buffs设计的280多种风格化沙漠和海滩纹理系列,为您的游戏锦上添花! 在这个系列中,你会在风格化/幻想/rpg风格的游戏中找到大量适合沙漠、…

python与上位机开发day02

1.常见运算符 1.1 赋值运算符 赋值运算符主要用来对变量进行赋值,包括如下这些: 运算符描述赋值加等于-减等于*乘等于/除等于//整除等于%模等于**幂等于 实例如下: a 10 a 5 # 等价于 a a5 a *2 # 等价于 a a*21.2 比较运算符 比较运算符主要用来比较两个数据的大小…

树莓派驱动开发----iic驱动oled屏幕篇

水一期吧&#xff0c;上效果 有点模糊&#xff0c;我直接说吧&#xff0c;修改设备树&#xff0c;iic1&#xff0c;地址0x3c&#xff0c;然后编写驱动文件&#xff0c;app文件&#xff0c;挂载驱动模块后在终端输入 /*******************************************************…

Ventus(承影):基于RISC V的开源GPGPU

Ventus&#xff08;承影&#xff09;&#xff1a;基于RVV的开源GPGPU 清华大学集成电路学院dsp-lab的承影RVV GPGPU设计文档。 整体目标 提供一个开源的基于RVV的GPGPU实现方案&#xff0c;并给出软件映射方案、指令集&#xff08;支持的指令及特性、添加的自定义指令&#xf…

经典的目标检测算法有哪些?

一、经典的目标检测算法有哪些&#xff1f; 目标检测算法根据其处理流程可以分为两大类&#xff1a;One-Stage&#xff08;单阶段&#xff09;算法和Two-Stage&#xff08;两阶段&#xff09;算法。以下是一些经典的目标检测算法&#xff1a; 单阶段算法: YOLO (You Only Loo…

iOS ------代理 分类 拓展

代理协议 一&#xff0c;概念&#xff1a; 代理&#xff0c;又称委托代理&#xff08;delegate&#xff09;&#xff0c;是iOS中常用的一种设计模式。顾名思义&#xff0c;它是把某个对象要做的事委托给别的对象去做。那么别的对象就是这个对象的代理&#xff0c;代替它来打理…

图书租赁系统-借阅图书

图中展示了所有可以借阅的图书&#xff0c;点击“借阅”按钮便可以借阅图书。 借阅成功后&#xff0c;可以到bookorder菜单中阅读该书。 阅读功能待开发。 add.html借阅图书页面 <!DOCTYPE html> <html lang"zh" xmlns:th"http://www.thymeleaf.org…

学习经验分享【33】YOLOv5 / YOLOv7 / YOLOv8 / YOLOv9 / RTDETR 基于 Pyside6 的图形化界面

大论文可以写两章关于算法创新模型&#xff0c;最后一章可以写对前两章提出方法进行封装&#xff0c;利用PyQT5搭建YOLOv5可视化界面&#xff0c;并打包成exe程序&#xff0c;构建检测平台实现简单的应用。用来凑大论文的字数和工作量&#xff0c;是简单又快速的方法&#xff0…

如何使用国内手机号免费注册一个美区 Apple ID?

因为一些众所周知的原因&#xff0c;在国内使用 iPhone 是被阉割过的&#xff0c;如果想要用完全版就需要用到美区账号&#xff0c;废话不多说直接上图。 在 iPhone 的浏览器上打开链接进行注册 https://appleid.apple.com/account 如果注册提示&#xff1a;Your request cou…

SpringCloud注册nacos错误:Could not resolvplaceholder ‘xxxxx‘ in value “xxxx“

这个错误是我在做spirngcloud注册服务到nacos时发现的&#xff0c;算是折磨我折磨了好久&#xff0c;最后发现了还是先记录一下&#xff0c;首先还是说一下我的项目版本信息&#xff0c;因为不同的版本就有这不同的解决方案&#xff0c;这也是最恶心的一点&#xff0c;以至于我…

基于RT-Thread的智能家居助手

一、项目简介 智能家居助手主要基于RT-Thread开发的&#xff0c;该系统主要分为语音子系统&#xff0c;环境监测子系统&#xff0c;智能控制子系统&#xff0c;智能网关子系统&#xff0c;音乐播放器&#xff0c;云端以及应用软件七大部分。语音子系统可通过语音进行人机交互来…

OpenCV——图像分块局部阈值二值化

目录 一、算法原理1、算法概述2、参考文献 二、代码实现三、结果展示 OpenCV——图像分块局部阈值二值化由CSDN点云侠原创&#xff0c;爬虫自重。如果你不是在点云侠的博客中看到该文章&#xff0c;那么此处便是不要脸的爬虫。 一、算法原理 1、算法概述 针对目前局部阈值二值…

from_pretrained明明以及下载好模型,却突然不能加载了报错

本人报错&#xff1a;OSError: Error no file named model_index.json found in directory /home/xxx/我的python学习/textToImage/sdxl-turbo. 原因&#xff1a;路径错误导致无法加载模型的配置文件 pipe AutoPipelineForText2Image.from_pretrained("stabilityai/sdx…

HORROR SYSTEM

HORROR SYSTEM是一个创新的工具包,允许开发者在Unity3D中创建独特的原创恐怖游戏。 HORROR SYSTEM是一款强大而灵活的工具,旨在基于Unity3D引擎创建沉浸式第三人称恐怖游戏。 这项资产易于使用且直观,可以让任何经验水平的开发人员将他们的想法付诸实践,创造出高质量、充满…

文献速递:深度学习胶质瘤诊断---空间细胞结构预测胶质母细胞瘤的预后

Title 题目 Spatial cellular architecture predicts prognosis in glioblastoma 空间细胞结构预测胶质母细胞瘤的预后 01文献速递介绍 胶质母细胞瘤的治疗耐药性的关键驱动因素是肿瘤内的异质性和细胞状态的可塑性。在这里&#xff0c;我们调查了空间细胞组织与胶质母细胞瘤…

python爬虫 - 爬取html中的script数据(zum.com新闻信息 )

文章目录 1. 分析页面内容数据格式2. 使用re.findall方法&#xff0c;编写爬虫代码3. 使用re.search 方法&#xff0c;编写爬虫代码 1. 分析页面内容数据格式 &#xff08;1&#xff09;打开 https://zum.com/ &#xff08;2&#xff09;按F12&#xff08;或 在网页上右键 --…

C++中的五种高级初始化技术:从reserve到piecewise_construct等

C高级初始化技术&#xff1a;reserve、emplace_back、constinit、Lambda表达式、piecewise_construct 一、简介二、reserve 结合 emplace_back三、C 20的constinit四、Lambda表达式和初始化五、make_unique_for_overwrite六、piecewise_construct 和 forward_as_tuple七、总结 …

SpringBoot xxl-job 任务调度

首先官网下载xxl-job的源代码&#xff0c;然后切换到jdk8&#xff0c;等Maven下载依赖 执行mysql的脚本&#xff0c;修改连接配置&#xff0c;启动admin站点 默认地址 http://localhost:8080/xxl-job-admin/ 先新增一个任务执行器&#xff0c;指向未来任务代码的站点 然后在…

探索亚马逊云科技「生成式 AI 精英速成计划」

目录 前言「生成式 AI 精英速成计划」技术开发课程学习课程学习 总结 前言 亚马逊云科技&#xff08;Amazon Web Services&#xff0c;简称AWS&#xff09;作为全球领先的云计算服务提供商&#xff0c;一直以来在推动人工智能&#xff08;AI&#xff09;领域的发展中扮演着重要…

MATLAB将多张小图整合到一张大图形成模板图

MATLAB将多张小图整合到一张大图形成模板图 代码如下: clc;close all;clear all;warning off;%清除变量 rand(seed, 100); randn(seed, 100); format long g;foldername字符模板; [datacell,filenamecell,filenameAllcell]readfun_1n(foldername); K2length(filenamecell);% …