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

📄 yesnoquestionaction.java

📁 java网上考试系统
💻 JAVA
字号:
package com.qrsx.exam.struts.action;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.qrsx.exam.dao.DAOFactory;
import com.qrsx.exam.dao.TestPaperDAO;
import com.qrsx.exam.dao.YesNoQuestionDAO;
import com.qrsx.exam.model.TestPaper;
import com.qrsx.exam.model.YesNoQuestion;
import com.qrsx.exam.struts.form.YesnoQuestionForm;
import com.qrsx.exam.util.BeanUtils;

/**
 * The Action about test Question
 * 
 * @struts.action name="yesnoQuestionForm" path="/exam/yesnoquestion"
 *                scope="request" input="/exam/question_list.jsp"
 *                validate="false" parameter="p"
 * 
 * @struts.action-forward name="add" path="/exam/yesnoquestion_add.jsp"
 * 
 * @struts.action-forward name="update" path="/exam/yesnoquestion_update.jsp"
 * 
 */
public class YesNoQuestionAction extends QuestionAction {
    /**
     * 判断题保存功能的实现
     */
    public ActionForward add(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        // 得到用户提交的参数
        YesNoQuestion yesno = BeanUtils.copyProperties(new YesNoQuestion(),
                form);

        // 得到试卷对象
        String paperid = request.getParameter("paperid");
        TestPaperDAO paperdao = DAOFactory.getDao(TestPaperDAO.class);
        TestPaper paper = paperdao.findById(paperid, false);

        // 保存判断题信息
        yesno.setTestpaper(paper);
        paper.getYesnoquestions().add(yesno);

        addMessage(request, "yesnoQuestion.add.success");

        // 清空Form中的数据
        YesnoQuestionForm yesnoForm = (YesnoQuestionForm) form;
        yesnoForm.setTitle(null);
        yesnoForm.setAnswer(null);
        yesnoForm.setScore(null);

        // 返回判断题录入页面
        return addin(mapping, form, request, response);
    }

    /**
     * 进入判断题修改页面
     */
    public ActionForward updatein(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        // 得到用户提交的参数
        YesnoQuestionForm yesnoform = (YesnoQuestionForm) form;

        // 取得判断题的信息
        YesNoQuestionDAO dao = DAOFactory.getDao(YesNoQuestionDAO.class);
        YesNoQuestion question = dao.findById(yesnoform.getId(), false);
        request.setAttribute("question", question);
        request.setAttribute("paper", question.getTestpaper());

        // 跳转到判断题的修改页面
        return mapping.findForward("update");
    }

    /**
     * 判断题的保存功能
     */
    public ActionForward save(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        // 得到用户提交的参数
        YesnoQuestionForm yesnoform = (YesnoQuestionForm) form;

        // 得到持久态的判断题对象
        YesNoQuestionDAO dao = DAOFactory.getDao(YesNoQuestionDAO.class);
        YesNoQuestion question = dao.findById(yesnoform.getId(), false);

        // 保存用户提交的参数
        question = BeanUtils.copyProperties(question, form);

        addMessage(request, "yesnoQuestion.update.success");

        // 返回试题列表页面
        return list(question.getTestpaper().getId(), mapping, request);
    }

    /**
     * 判断题删除功能
     */
    public ActionForward delete(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        // 得到用户提交的参数
        YesnoQuestionForm yesnoform = (YesnoQuestionForm) form;

        // 删除判断题对象
        YesNoQuestionDAO dao = DAOFactory.getDao(YesNoQuestionDAO.class);
        YesNoQuestion question = dao.findById(yesnoform.getId(), false);
        TestPaper paper = question.getTestpaper();
        paper.getYesnoquestions().remove(question);
        dao.makeTransient(question);

        addMessage(request, "yesnoQuestion.delete.success");

        // 返回判断题列表页面
        return list(paper.getId(), mapping, request);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -