⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 questionanswercheckevent.java

📁 一个在线学习系统的服务端SERVLET程序
💻 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 + -