DataBean.java
package bean;
public class DataBean {
String a,b,c;
String op;
String feedback;
public DataBean(){
a=" "; b=""; c=""; op="";
feedback="";
}
public void setA(String a){
this.a=a;
}
public String getA(){
return a;
}
public void setB(String b){
this.b=b;
}
public String getB(){
return b;
}
public void setC(String c){
this.c=c;
}
public String getC(){
return c;
}
public void setOp(String op){
this.op=op;
}
public String getOp(){
return op;
}
public void setFeedback(String feedback){
this.feedback= feedback;
}
public String getFeedback(){
return feedback;
}
}
RandomNumServlet.java
package servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.*;
import bean.*;
import java.util.Random;
/**
* Servlet implementation class RandomNum
*/
@WebServlet("/RandomNum")
public class RandomNumServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RandomNumServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Random ran=new Random();
int a=ran.nextInt(10);
int b=ran.nextInt(10);
int opNum=ran.nextInt(2);
String op="";
if(opNum==1){
op="+";
}
else {
op="-";
}
DataBean db=new DataBean();
db.setA(String.valueOf(a));
db.setB(String.valueOf(b));
db.setOp(op);
HttpSession session=request.getSession();//如果当前会话已经有了session对象那么直接返回,如果当前会话还不存在会话,那么创建session并返回;
session.setAttribute("dataBean",db);//在session中保存了一个域属性,域属性名称为dataBean,域属性的值为db
session.setAttribute("a", a);
session.setAttribute("b", b);
session.setAttribute("op", op);
//
// response.sendRedirect("QuizInterface.jsp");
request.getRequestDispatcher("QuizInterface.jsp").forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
CalculateNumServlet.java
package servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.*;
import bean.*;
import java.util.Random;
/**
* Servlet implementation class RandomNum
*/
@WebServlet("/RandomNum")
public class RandomNumServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RandomNumServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
Random ran=new Random();
int a=ran.nextInt(10);
int b=ran.nextInt(10);
int opNum=ran.nextInt(2);
String op="";
if(opNum==1){
op="+";
}
else {
op="-";
}
DataBean db=new DataBean();
db.setA(String.valueOf(a));
db.setB(String.valueOf(b));
db.setOp(op);
HttpSession session=request.getSession();//如果当前会话已经有了session对象那么直接返回,如果当前会话还不存在会话,那么创建session并返回;
session.setAttribute("dataBean",db);//在session中保存了一个域属性,域属性名称为dataBean,域属性的值为db
session.setAttribute("a", a);
session.setAttribute("b", b);
session.setAttribute("op", op);
//
// response.sendRedirect("QuizInterface.jsp");
request.getRequestDispatcher("QuizInterface.jsp").forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
web.xml
<servlet>
<servlet-name>tomcatRandomNum</servlet-name>
<servlet-class>servlet.RandomNumServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>tomcatRandomNum</servlet-name>
<url-pattern>/userRandomNum</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>tomcatCalculate</servlet-name>
<servlet-class>servlet.CalculateServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>tomcatCalculate</servlet-name>
<url-pattern>/userCalculate</url-pattern>
</servlet-mapping>
StartInterface.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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form name="form1" method="post" action="userRandomNum">
<label>
<input type="submit" name="Submit" value="生成算式">
</label>
</form>
</body>
</html>
QuizInterface.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>
<jsp:useBean id="dataBean" class="bean.DataBean" scope="session"/>
<jsp:setProperty name="dataBean" property="*" />
<form name="form1" method="post" action="userCalculate">
<label>
<jsp:getProperty property="a" name="dataBean"/>
<jsp:getProperty property="op" name="dataBean"/>
<jsp:getProperty property="b" name="dataBean"/>
=?
<br>
<input name="answer" type="text" id="answer">
<input type="submit" name="Submit" value="提交答案">
<br>
</label>
<label></label>
</form>
<jsp:getProperty name="dataBean" property="feedback" />
</body>
</html>