📄 questionanswercheckevent.java
字号:
package eols.event.test;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: </p> * @author not attributable * @version 1.0 */import java.util.*;import javax.servlet.*;import javax.servlet.http.*;import eols.bean.system.*;import eols.bean.test.*;import eols.tools.*;import eols.event.system.*;public class QuestionAnswerCheckEvent extends QuestionEventHandlerBase { /** * 事件的处理逻辑 */ public void process(ServletContext sc, HttpServletRequest request, HttpServletResponse response, HashMap bean) { Result result = new Result(); String loginID = SessionUtils.getStringSessionAttribute(request, "loginID", null); if (loginID == null) { result.setHandleResult("Can not identify your User Id."); result.setSymbol(Result.FAILED); request.setAttribute("result", result); return; } List questions = SessionUtils.getListSessionAttribute(request, "questions", null); if (questions == null) { result.setHandleResult("Can not obtain the question set."); result.setSymbol(Result.FAILED); request.setAttribute("result", result); return; } int wrong = 0, correct = 0; StringBuffer yourA = new StringBuffer(); StringBuffer correctA = new StringBuffer(); StringBuffer part; for (int i = 0; i < questions.size(); i++){ Question temp = (Question)questions.get(i); String answer = temp.getAnswer(); correctA.append(answer); if (i != questions.size() - 1) correctA.append(";"); part = new StringBuffer(); String[] userAnswers = request.getParameterValues(String.valueOf(temp.getId())); for (int j = 0; j < userAnswers.length; j++){ yourA.append(userAnswers[j]).append(" "); part.append(userAnswers[j]).append(" "); } if (i != questions.size() - 1) yourA.append(";"); temp.setYourA(part.toString()); for (int j = 0; j < userAnswers.length; j++) { if (answer.indexOf(userAnswers[j]) == -1) { temp.setAnswerCorrect(false); wrong++; break; } else { temp.setAnswerCorrect(true); } } } correct = questions.size() - wrong; request.setAttribute("correct", ""+correct); request.setAttribute("wrong", ""+wrong); request.setAttribute("correctA", correctA.toString()); request.setAttribute("yourA", yourA.toString()); // Save the test result List records = new ArrayList(questions.size()); // Put the wrong answer into the user's error pads for (int i = 0; i < questions.size(); i++){ Question temp = (Question)questions.get(i); TestResult record = new TestResult(); record.setUserID(loginID); record.setCorrect(temp.isAnswerCorrect()); record.setQuestionID(temp.getId()); record.setYourA(temp.getYourA()); record.setId(System.currentTimeMillis()); record.setTestDate(DateUtils.getCurrentDate()); records.add(record); } // Save the test result Map params = new HashMap(); params.put("type", "SAVETESTRESULT"); params.put("results", records); super.iTran.process(params); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -