📄 student_examination_moreaction.java
字号:
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package action;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import po.QuestionPO;
import business.Exam_paperDAO;
public class student_examination_moreAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String[] more = request.getParameterValues("single");
String m_answer ="";
for(int i=0;i<more.length;i++)
{
m_answer+=more[i];
}
String submit = (String)request.getParameter("submit");
HttpSession session = request.getSession();
ArrayList array = (ArrayList)session.getAttribute("overanswer");//答过的题
String rkey = (String)session.getAttribute("rkey");//答对题数
String wkey = (String)session.getAttribute("wkey");//答错题数
String examno = (String)session.getAttribute("examno");//题号
QuestionPO qpo = (QuestionPO)session.getAttribute("qpo");//所出的题
ArrayList al = (ArrayList)session.getAttribute("list");
String rightkey = (String)session.getAttribute("rightkey");
String wrongkey = (String)session.getAttribute("wrongkey");
String did = (String)session.getAttribute("did");
String cno = (String)session.getAttribute("cid");
String cid = (String)request.getParameter("cid");
String time = (String)request.getParameter("time1");
QuestionPO qu = (QuestionPO)session.getAttribute("QuestionPO");
QuestionPO quu = null;
session.setAttribute("time", time);
Exam_paperDAO epdao = new Exam_paperDAO();
int[] sign = new int[20];
if(submit == null || submit.equals("下一题"))
{
if(array==null && rkey==null && wkey==null && examno==null && qpo==null)
{
rkey = "0";
wkey = "0";
examno = "1";
rightkey = "0";
wrongkey = "0";
did = "1";
array = epdao.findByCid(Integer.parseInt(cid));
for(int i =0;i<array.size();i++)
{
QuestionPO q = (QuestionPO)array.get(i);
sign[i] = q.getQid();
}
int paperid = (int)(Math.random()*array.size());//随机取题
for(int j = 0;j<array.size();j++)
{
qpo = (QuestionPO)array.get(j);//将此题写入PO中
if(sign[paperid] != -1)//标志位1代表无标志位
{
sign[paperid] = -1;
qpo.setSign(sign);
session.setAttribute("overanswer",array);//答过的题
session.setAttribute("rkey",rkey);//答对题数
session.setAttribute("wkey",wkey);//答错题数
session.setAttribute("examno",examno);//题号
session.setAttribute("qpo",qpo);//所出的题
session.setAttribute("rightkey",rightkey);
session.setAttribute("wrongkey",wrongkey);
session.setAttribute("wrongkey",wrongkey);
session.setAttribute("cid",cid);
session.setAttribute("did",did);
break;
}
}
}
//第二次
else
{
if(qu != null)
{
quu = qu;
}
else
{
quu = qpo;
}
if(m_answer.equals(quu.getAnswer()))
{
rightkey = (Integer.parseInt(rightkey)+1)+"";
rkey = (Integer.parseInt(rkey)+1)+"";
session.setAttribute("rkey",rkey);
if(rightkey.equals("3"))
{
did = quu.getDid()+"";
if(did.equals("3"))
{
quu.setDid(3);
}
else
{
did = (quu.getDid()+1)+"";
}
session.setAttribute("did",did);
rightkey = "0";
}
}
else
{
wrongkey = (Integer.parseInt(wrongkey)+1)+"";
wkey = (Integer.parseInt(wkey)+1)+"";
session.setAttribute("wkey",wkey);
if(wrongkey.equals("3"))
{
did = quu.getDid()+"";
if(did.equals("1"))
{
quu.setDid(1);
}
else
{
did = (quu.getDid()-1)+"";
}
session.setAttribute("did",did);
wrongkey = "0";
}
}
//继续选题
sign = qpo.getSign();
int paperid = (int)(Math.random()*array.size());//随机取题
while(true)
{
if(sign[paperid] != -1)//标志位1代表无标志位
{
qu = new Exam_paperDAO().findByID(sign[paperid]);
sign[paperid] = -1;
qpo.setSign(sign);
session.setAttribute("list",al);
session.setAttribute("overanswer",array);//答过的题
session.setAttribute("examno",(Integer.parseInt(examno)+1)+"");//题号
session.setAttribute("rightkey",rightkey);
session.setAttribute("wrongkey",wrongkey);
session.setAttribute("cid",cno);
session.setAttribute("QuestionPO", qu);
break;
}
else
{
paperid = (int)(Math.random()*array.size());//随机取题
}
}
}
return mapping.findForward("ok");//student_examination.jsp
}
else
{
return mapping.findForward("no");//student_submitpaterAction.do
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -