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

📄 submitansweraction.java

📁 采用Eclispe开发平台
💻 JAVA
字号:
package com.whatratimes.webedu.student;

import com.whatratimes.dbms.InsertSQLExecuter;
import com.whatratimes.dbms.UpdateSQLExecuter;
import com.whatratimes.dbms.UserSQLExecuter;
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 org.apache.struts.validator.DynaValidatorActionForm;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.Date;
import java.util.Hashtable;

/**
 * User: Tao
 * Date: Jun 16, 2003
 * Time: 8:43:23 PM
 */
public class SubmitAnswerAction extends Action
{
    public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception
    {

        HttpSession session = httpServletRequest.getSession();

        DynaValidatorActionForm form = (DynaValidatorActionForm) actionForm;

        Integer submit_id = (Integer) form.get("SubmitId");
        Integer seq = (Integer) form.get("QuestionSeq");

        String content = (String) form.get("Answer");

        if (seq.intValue() > 0)
        {
            int rownum = UserSQLExecuter.executeUpdate(
                    "delete from t_exam_question_submit " +
                    "where SubmitId = " + submit_id + " and QuestionSeq = " + seq
            );

            if (rownum == 0)
            {
                // new submit;
                Object obj = session.getAttribute("Answered");
                if (obj != null)
                {
                    session.setAttribute("Answered", new Integer(((Integer) obj).intValue() + 1));
                } else
                {
                    session.setAttribute("Answered", new Integer(1));
                }
            }

            InsertSQLExecuter sql = new InsertSQLExecuter();

            sql.appendTableName("t_exam_question_submit");
            sql.appendValue("SubmitId", submit_id);
            sql.appendValue("QuestionSeq", seq);
            sql.appendValue("Answer", content);

            sql.executeUpdate();

        }

        if ("1".equals(form.get("Finish").toString()))
        {
            UpdateSQLExecuter usql = new UpdateSQLExecuter();
            usql.appendTableName("t_exam_submit");
            usql.appendSetValue("SubmitTime", new Date());
            usql.appendSetValue("State", new Integer(2));

            usql.appendWhereCondition("SubmitId", "=", submit_id);

            usql.executeUpdate();

            int total = ((Object[])session.getAttribute("Questions")).length;

            for ( int i=seq.intValue()+1; i<total+1; i++ )
            {
                UserSQLExecuter.executeUpdate(
                        "insert into t_exam_question_submit " +
                        "(SubmitId, QuestionSeq, Answer) " +
                        "values ( " + submit_id + ", " + i + ", '' )");
            }

            return actionMapping.findForward("finish");
        }

        int next_seq;

        if (form.get("Next").toString().equals("1"))
        {
            next_seq = seq.intValue() + 1;
        } else
        {
            next_seq = seq.intValue() - 1;
        }

        int total = ((Integer) form.get("Total")).intValue();

        if (next_seq > total)
        {
            next_seq = total;
        } else if (next_seq < 1)
        {
            next_seq = 1;
        }

        session.setAttribute("QuestionSeq", new Integer(next_seq));

        form.set("QuestionSeq", new Integer(next_seq));
        form.set("Answer", "");

        Object[] objs = UserSQLExecuter.executeQuery(
                "select Answer from t_exam_question_submit " +
                "where SubmitId = " + submit_id + " AND QuestionSeq = " + next_seq
        );

        if (objs.length > 0)
        {
            form.set("Answer", (((Hashtable) objs[0]).get("Answer")).toString());
            session.setAttribute("CurrentUnAnswered", new Integer(0));

        } else
        {
            session.setAttribute("CurrentUnAnswered", new Integer(1));
        }

        return actionMapping.findForward("success");
    }

}

⌨️ 快捷键说明

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