最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

考试系统源代码:ExamAction.java

来源:动视网 责编:小OO 时间:2025-10-03 00:36:49
文档

考试系统源代码:ExamAction.java

packagecom.webExam.action;importjava.util.Iterator;importjava.util.List;importjava.util.Set;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.apache.struts2.ServletActionContext;importorg.springframew
推荐度:
导读packagecom.webExam.action;importjava.util.Iterator;importjava.util.List;importjava.util.Set;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.apache.struts2.ServletActionContext;importorg.springframew
package com.webExam.action;

import java.util.Iterator;

import java.util.List;

import java.util.Set;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

import org.springframework.util.Assert;

//导入实体

import com.webExam.domain.Exam;

import com.webExam.domain.Question;

import com.webExam.domain.QuestionItem;

import com.webExam.service.QuestionItemService;

import com.webExam.service.ExamService;

import com.opensymphony.xwork2.ActionSupport;

public class ExamAction extends ActionSupport {

    private static final long serialVersionUID = 5192939935859483841L;

    //新增试卷信息

    public String create()  { 

        HttpServletRequest req = ServletActionContext.getRequest();

        HttpServletResponse res = ServletActionContext.getResponse();

        //获取试卷信息

        Exam exam = getExamBean(req, res);

        //进行新增

        getExamService().create(exam);

        //获取已有的试卷信息

List listExams = getExamService().queryList();

        //将已有的试卷信息传递给页面

        req.setAttribute("listExams", listExams);

        //存放消息 

        req.setAttribute("msg", "新增成功");

        return SUCCESS; 

     } 

    //修改试卷信息

    public String update() { 

        HttpServletRequest req = ServletActionContext.getRequest();

        HttpServletResponse res = ServletActionContext.getResponse();

        //获取试卷信息

        Exam exam = getExamBean(req, res);

        //进行修改

        getExamService().update(exam);

        //获取已有的试卷信息

List listExams = getExamService().queryList();

        //将已有的试卷信息传递给页面

        req.setAttribute("listExams", listExams);

        //存放消息 

        req.setAttribute("msg", "修改成功");

        return SUCCESS; 

     } 

    //删除试卷信息

    public String delete() { 

        HttpServletRequest req = ServletActionContext.getRequest();

        HttpServletResponse res = ServletActionContext.getResponse();

        //获取试卷信息

        Exam exam = getExamBean(req, res);

        //进行删除

        getExamService().delete(exam);

        //获取已有的试卷信息

List listExams = getExamService().queryList();

        //将已有的试卷信息传递给页面

        req.setAttribute("listExams", listExams);

        //存放消息 

        req.setAttribute("msg", "删除成功");

        return SUCCESS; 

     } 

    //设定该试卷下的题目

    public String createQuestion() { 

        HttpServletRequest req = ServletActionContext.getRequest();

        HttpServletResponse res = ServletActionContext.getResponse();

        //获取试卷信息

        Exam exam = getExamBean(req, res);

        exam = getExamService().query(exam.getId());

        //获取该试卷题目下已有的题目

Set listQuestions = exam.getQuestion();

        //将该试卷题目下已有的题目信息传递给页面

        req.setAttribute("listQuestions", listQuestions);

        //将该试卷信息传递给页面

        req.setAttribute("exam", exam);

        //存放消息 

        req.setAttribute("msg", "欢迎进入" + exam.getName() + "试题题目管理系统");

        return "createQuestion"; 

     } 

    //进行考试

    public String exam() { 

        HttpServletRequest req = ServletActionContext.getRequest();

        HttpServletResponse res = ServletActionContext.getResponse();

        //获取试卷信息

        Exam exam = getExamBean(req, res);

        exam = getExamService().query(exam.getId());

        //将该试卷信息传递给页面

        req.setAttribute("exam", exam);

        //存放消息 

        req.setAttribute("msg", "欢迎您开始《" + exam.getName() + "》试卷");

        return "exam"; 

     } 

    //统计试卷成绩

    public String submitExam() { 

        HttpServletRequest req = ServletActionContext.getRequest();

        //获取试卷信息

        Exam exam = new Exam();

        exam = getExamService().query(Integer.valueOf(req.getParameter("examId")));

        //定义该此考试的分数

        float result = 0f;

        //获取该试卷下的题目

     Set listQuestions = exam.getQuestion();

       Iterator iterator = listQuestions.iterator();

        //获取每个题目下的项目

          while (iterator != null && iterator.hasNext()) {

              Question question = (Question)iterator.next();              

              //获取该题目下的项目

           List listQuestionItems = question.getQuestionItem();

              //获取用户选择的题目下的项目

              Assert.notNull((String)req.getParameter(question.getId() + ""));

              int questionId = Integer.valueOf((String)req.getParameter(question.getId() + ""));

              //累计用户提交的题目下的项目

           for (int j = 0; listQuestionItems != null && j < listQuestionItems.size(); j++) {

                    QuestionItem questionItem = (QuestionItem)listQuestionItems.get(j);

                    if(questionId == questionItem.getId()) {

                        if (questionItem.getIsOk() == 1) {

                            //统计成绩

                            result = result + question.getPoint();

                            break;

                        }

                    }

              }

        }

        //将该试卷信息传递给页面

        req.setAttribute("exam", exam);

        //将成绩传递给页面

        req.setAttribute("result", result);

        //存放消息 

        req.setAttribute("msg", "欢迎您查看《" + exam.getName() + "》试卷的成绩");

        return "examResult"; 

     } 

    public String index() { 

        HttpServletRequest req = ServletActionContext.getRequest();

      //获取已有的试卷信息

     List listExams = getExamService().queryList();

        //将已有的试卷信息传递给页面

        req.setAttribute("listExams", listExams);

        req.setAttribute("msg", "欢迎进入试卷题目管理系统");

        return SUCCESS; 

     } 

    //获取试卷业务逻辑

    public ExamService getExamService(){ 

        return examService; 

    }

    //设定试卷业务逻辑

    public void setExamService(ExamService examService){ 

        this.examService = examService; 

    }

    private ExamService examService; 

  //获取试题项目业务逻辑

    public QuestionItemService getQuestionItemService(){ 

        return questionItemService; 

    }

    //设定试题项目业务逻辑

    public void setQuestionItemService(QuestionItemService questionItemService){ 

        this.questionItemService = questionItemService; 

    }

    private QuestionItemService questionItemService; 

    //封装试卷基本信息

    public Exam getExamBean(HttpServletRequest req, HttpServletResponse res)  {

        Exam exam = new Exam();

        try {

            //判断是否是新增或者修改还是删除,如果是新增则不需要id

            String hh = req.getParameter("examId" + (String)req.getParameter("checkbox") + "");

            if (!"".equals(hh) && hh != null) {

                exam.setId(Integer.valueOf(req.getParameter("examId" + (String)req.getParameter("checkbox") + "")));

            }

            //获取基本信息

            exam.setName(((String)req.getParameter("name" + (String)req.getParameter("checkbox") + "")));

        } catch (Exception ex) {

            ex.printStackTrace();

        }

        return exam;

    }

}

文档

考试系统源代码:ExamAction.java

packagecom.webExam.action;importjava.util.Iterator;importjava.util.List;importjava.util.Set;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importorg.apache.struts2.ServletActionContext;importorg.springframew
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top