首先附上选择题目数量和每行题数的JSP代码

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8" %>
  5. <meta http-equiv="Content-Type" content="text/html;charset=ytf-8">
  6. <title>四则运算</title>
  7. </head>
  8. <%
  9. Object message=request.getAttribute("message");
  10. if(!(message==null||message.equals("")))
  11. {
  12. %>
  13. <script type="text/javascript">alert('<%=message%>')</script>
  14. <%
  15. }
  16. %>
  17. <body style="background-color:pink" align="center">
  18. <form action="SizeServlet?method=submit" method="post">
  19. <br>
  20. <br>
  21. <br>
  22. <br>
  23. <br>
  24. <br>
  25. <br>
  26. <br>
  27. <p style="padding-left:200px;">请输入您要出多少道题:<input type="text" style="width:50px" name="sum"></p>
  28. <p style="padding-left:200px;">请输入一行几到题:<input type="text" style="width:50px" name="n"></p>
  29. <p style="padding-left:200px;"><input type="submit" value="提交"></p>
  30. </form>
  31.  
  32. </body>
  33. </html>

现在是接收的Servlet层

  1. package math;
  2.  
  3. import java.io.IOException;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.annotation.WebServlet;
  6. import javax.servlet.http.HttpServlet;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9.  
  10. /**
  11. * Servlet implementation class SizeServlet
  12. */
  13. @WebServlet("/SizeServlet")
  14. public class SizeServlet extends HttpServlet {
  15. private static final long serialVersionUID = 1L;
  16.  
  17. /**
  18. * @see HttpServlet#HttpServlet()
  19. */
  20. public SizeServlet() {
  21. super();
  22. // TODO Auto-generated constructor stub
  23. }
  24.  
  25. protected void service(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException
  26. {
  27. arg0.setCharacterEncoding("utf-8");
  28. arg1.setCharacterEncoding("utf-8");
  29. String function=arg0.getParameter("method");
  30. if(function.equals("submit"))
  31. {
  32. String str;
  33. int sum,n;
  34. str=arg0.getParameter("sum");
  35. if(str==""||str==null)
  36. {
  37. arg0.setAttribute("message", "提交失败,题目数不能为空");
  38. arg0.getRequestDispatcher("NewFile1.jsp").forward(arg0, arg1);
  39. return;
  40. }
  41. sum=Integer.valueOf(str).intValue();
  42. str=arg0.getParameter("n");
  43. if(str==""||str==null)
  44. {
  45. arg0.setAttribute("message", "提交失败,每行个数不能为空");
  46. arg0.getRequestDispatcher("NewFile1.jsp").forward(arg0, arg1);
  47. return;
  48. }
  49. n=Integer.valueOf(str).intValue();
  50. SizeService.setSum(sum);
  51. SizeService.setN(n);
  52. if(sum<=1000&&n<=8&&n>0)
  53. {
  54. arg0.setAttribute("message", "提交成功");
  55. arg0.getRequestDispatcher("NewFile.jsp").forward(arg0, arg1);
  56. return;
  57. }
  58. else
  59. {
  60. arg0.setAttribute("message", "提交失败");
  61. arg0.getRequestDispatcher("NewFile1.jsp").forward(arg0, arg1);
  62. return;
  63. }
  64. }
  65. }
  66.  
  67. /**
  68. * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
  69. */
  70. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  71. // TODO Auto-generated method stub
  72. response.getWriter().append("Served at: ").append(request.getContextPath());
  73. }
  74.  
  75. /**
  76. * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
  77. */
  78. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  79. // TODO Auto-generated method stub
  80. doGet(request, response);
  81. }
  82.  
  83. }

然后是出题的代码

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <%@ page language="java" contentType="text/html; charset=UTF-8"
  5. pageEncoding="UTF-8"%>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <%@ page language="java" import="math.StringHandle"%>
  8. <%@ page language="java" import="math.EntityToString"%>
  9. <%@ page language="java" import="math.MathGenerate"%>
  10. <%@ page language="java" import="math.SizeService"%>
  11. <title>四则运算</title>
  12. </head>
  13.  
  14. <body style="background-color:pink" align="center">
  15. <form action="NewFile2.jsp">
  16. <table align="center">
  17.  
  18. <%
  19. MathGenerate mg=new MathGenerate();
  20. int m,n;
  21. m=SizeService.getSum();
  22. n=SizeService.getN();
  23. mg.generate(m, 1);
  24. for(int i=0;i<mg.getAnwser().size();)
  25. {
  26. %>
  27. <!-- 一行有几个 -->
  28. <tr>
  29. <%
  30. for(int j=0;j<n&&i<m;j++,i++)
  31. {
  32.  
  33. %>
  34.  
  35. <td ><%=mg.getQuestion().get(i) %></td>
  36. <td>=</td>
  37. <td><input type="hidden" name="question" value=<%=mg.getQuestion().get(i) %>></td>
  38. <td><input type="text" style="width:50px" name="answer" ></td>
  39. <td><input type="hidden" name="daan" value=<%=mg.getAnwser().get(i) %>></td>
  40.  
  41. <%} %>
  42. </tr>
  43. <%}%>
  44.  
  45. </table>
  46. <p align="center"><input type="submit" value="提交"></p>
  47. </form>
  48. </body>
  49. </html>

其中出题代码中的MathGenerate()是自己定义的一个出题的类,专门用来出题,这里可以改成自己写的任何其他的出题类

然后就是判断做题是否正确的代码

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <%@ page language="java" contentType="text/html; charset=UTF-8"
  5. pageEncoding="UTF-8"%>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7.  
  8. <%@ page language="java" import="math.SizeService"%>
  9. <title>四则运算</title>
  10. </head>
  11.  
  12. <body style="background-color:pink" align="center">
  13.  
  14. <table align="center">
  15. <%
  16.  
  17. String answer[]=request.getParameterValues("answer");
  18. String daan[]=request.getParameterValues("daan");
  19. String question[]=request.getParameterValues("question");
  20. int m,n;
  21. m=SizeService.getSum();
  22. n=SizeService.getN();
  23.  
  24. for(int i=0;i<m;i++)
  25. {
  26. if(answer[i].equals(""))
  27. {
  28. %>
  29. <tr>
  30. <td>您没有做第<%=i+1 %>题:</td>
  31. <td><%=question[i] %></td>
  32. <td>=</td>
  33. <td>&nbsp;</td>
  34. <td>这道题的正确答案是<%=daan[i] %></td>
  35. </tr>
  36. <%}
  37. else if(daan[i].equals(answer[i]))
  38. {
  39. %>
  40. <tr>
  41. <td>您做的第<%=i+1 %>题:</td>
  42. <td><%=question[i] %></td>
  43. <td>=</td>
  44. <td><%=answer[i] %></td>
  45. <td>恭喜您做对了这道题</td>
  46. </tr>
  47. <%
  48. }
  49. else
  50. {
  51. %>
  52. <tr>
  53. <td>您做的第<%=i+1 %>题:</td>
  54. <td><%=question[i] %></td>
  55. <td>=</td>
  56. <td><%=answer[i] %></td>
  57. <td>很遗憾您做错了这道题,正确答案是<%=daan[i] %></td>
  58. </tr>
  59. <%} %>
  60.  
  61. <%}%>
  62. </table>
  63. <a href="NewFile1.jsp"><button style="border:0px solid;background:lightblue;margin-left:50%;">重新做题</button></a>
  64. <br>
  65. <br>
  66. <a href="NewFile3.jsp"><button style="border:0px solid;background:red;margin-left:50%;">结束答题</button></a>
  67.  
  68. </body>
  69. </html>

这个主要的就是值的传递

然后就是最简单的结束代码

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html>
  4. <html>
  5. <head>
  6. <meta charset="UTF-8">
  7. <title>结束</title>
  8. </head>
  9. <body style="background-image:url(44444.jpg);" align="center">
  10. <br>
  11. <br>
  12. <br>
  13. <br>
  14. <br>
  15. <br>
  16. <br>
  17. <br>
  18. <br>
  19. <br>
  20. <h1 style="color:red;font-size:500%" align="center">结束答题!</h1>
  21. </body>
  22. </html>

其中插了一张图片可根据自己需要删除

接下来是运行过程图片

提交之后进入答题界面:

点击提交进入判断正误界面(我没做这个题所以是这个样子)

在判断完正误之后可以选择继续答题或者结束答题

结束答题时这个样子的

这个四则运算主要的就是在JSP文件中值进行传递和页面的跳转其他的问题都时一些JAVA封装好的类然后进行调用

JAVA-WEB-简单的四则运算的更多相关文章

  1. JAVA实现简单的四则运算

    GitHub 项目地址 https://github.com/745421831/-/tree/master PSP PSP2.1 Personal Software Process Stages 预 ...

  2. 【知了堂学习笔记】java web 简单的登录

    最近皮皮潇在学习java web,刚接触了简单的东西,所以今天给大家带来一个简单的登录实现. 页面: 页面代码: <%@ page language="java" conte ...

  3. Java之简单的四则运算

    简单的四则运算 请你编写程序实现能处理两个数的+.-.*./.%的表达式程序.数据的输入/输出全部使用标准输入/输出,输入数据的第一行为你需要计算表达式的个数,从第2行开始,每一行为你计算的一个表达式 ...

  4. Java web 简单的增删改查程序(超详细)

    就是简单的对数据进行增删改查.代码如下: 1.bean层:用来封装属性及其get set方法 toString方法,有参构造方法,无参构造方法等. public class Bean { privat ...

  5. 学生信息的添加 Java web简单项目初试(修改)

    错误原因: 1.Java web 的Servlet类没有配置好,并且缺少一个 Dao类(Date Access Object通常用于操作数据库的). 2.代码的某些名称错误,导致数据库数据存储错误. ...

  6. [转]java web简单权限管理设计

    原文地址:http://blog.csdn.net/zwx19921215/article/details/44467099 最近在做一个网站类型项目,主要负责后台,ui框架选型为jquery eas ...

  7. java web简单权限管理设计

    一套最基本的权限管理包括用户.角色.资源. 数据库设计 我的设计如下: 用户:user 角色:role 用户-角色:user_role 资源:resource(包括上级菜单.子菜单.按钮等资源) 角色 ...

  8. java web 简单的登录注册

    --sql文件 create database studentgouse studentgocreate table stuinfo(--stuid int primary key identity( ...

  9. paperOne基于java web的简易四则运算出题网站

    项目成员:张金生     张政 需求概要 1.运算数均为正整数 2.包含的运算符有+,-,*,/ 3.除法运算结果为整除运算 4.批量生成题目并判题 核心功能分析 1.题目生成——java后端 题目生 ...

  10. [Java.web]简单计算器

    项目的  WebRoot 目录下的 calculator.jsp <%@ page language="java" import="java.util.*" ...

随机推荐

  1. [转帖]K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接)

    K8s 学习者绝对不能错过的最全知识图谱(内含 58个知识点链接)   https://www.cnblogs.com/alisystemsoftware/p/11429164.html 需要加强学习 ...

  2. MySQL数据库CPU飙升紧急处理方法

    MySQL数据库CPU飙升紧急处理方法 运行平稳的数据库,如果遇到CPU狂飙,到80%左右,那一定是开发写的烂SQL导致的,DBA首先要保证的是,数据库别跑挂了,所以我们要把那些运行慢的SQL杀死并记 ...

  3. 小菜鸟之oracle触发器

    1.触发器说明 触发器是一种在事件发生时隐式地自动执行的PL/SQL块,不能接受参数,不能被显式调用 2.触发器类型 根据触发器所创建的语句及所影响的对象的不同,将触发器分为以下3类 (1)DML触发 ...

  4. 关于springboot的日志logging.file和logging.path的配置问题

    springboot日志配置 logging.path  logging.file 它们俩不会同时生效,so只配置其中一个就好了. eg1: 单独一个path配置 logging.path=E:/lo ...

  5. MySQL密码正确却无法本地登录,ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

    MySQL密码正确却无法本地登录 报错如下: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password ...

  6. cdoj 574 High-level ancients dfs序+线段树 每个点所加权值不同

    High-level ancients Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/s ...

  7. fontmin字体子集

    怕忘了做个记录 链接:http://ecomfe.github.io/fontmin/#feature 特点:方便,快捷.

  8. java读取串口-mfz-rxtx-2.2-20081207-win-x86

    1.下载jar包 RXTXcomm.jar 2.实现代码 package main; import java.awt.*; import java.awt.event.*; import java.i ...

  9. Flutter 35: 图解自定义 View 之 Canvas (二)

    小菜前几天整理了以下 Canvas 的部分方法,今天小菜继续学习 Canvas 第二部分. drawXXX drawShadow 绘制阴影 drawShadow 用于绘制阴影,第一个参数时绘制一个图形 ...

  10. IPhone中H5页面用on绑定click无效的解决方法

    首先声明本人资质尚浅,本文只用于个人总结.如有错误,欢迎指正.共同提高. --------------------------------------------------------------- ...