📄 selectquestionaction.java
字号:
package cn.hxex.exam.action;
import java.io.IOException;
import java.util.Iterator;
import java.util.TreeSet;
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 cn.hxex.exam.dao.DAOFactory;
import cn.hxex.exam.dao.SelectQuestionDAO;
import cn.hxex.exam.dao.TestPaperDAO;
import cn.hxex.exam.form.SelectQuestionForm;
import cn.hxex.exam.model.SelectQuestion;
import cn.hxex.exam.model.Selected;
import cn.hxex.exam.model.TestPaper;
import cn.hxex.exam.util.HxexBeanUtils;
import cn.hxex.exam.util.HxexStringUtils;
/**
* The Action about test Question
*
* @struts.action
* name="selectQuestionForm"
* path="/exam/selectquestion"
* scope="request"
* input="/exam/question_list.jsp"
* validate="false"
* parameter="p"
*
* @struts.action-forward
* name="add"
* path="/exam/selectquestion_add.jsp"
*
* @struts.action-forward
* name="list"
* path="/exam/question_list.jsp"
*
* @struts.action-forward
* name="update"
* path="/exam/selectquestion_update.jsp"
*
* @author galaxy
*
*/
public class SelectQuestionAction extends QuestionAction
{
/**
* 保存选择题信息
*/
public ActionForward add( ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response )
throws IOException, ServletException
{
// 得到用户提交的信息
SelectQuestion select= HxexBeanUtils.copyProperties( new SelectQuestion(), form );
// 得到试卷的信息
String paperid = request.getParameter( "paperid" );
TestPaperDAO paperdao = DAOFactory.getDao( TestPaperDAO.class );
TestPaper paper = paperdao.findById( paperid, false );
// 保存试题信息
select.setTestpaper( paper );
paper.getSelectquestions().add( select );
// 得到选项信息,并保存
TreeSet<Selected> set = new TreeSet<Selected>();
for( char i='A'; i<='D'; i++ )
{
String content = request.getParameter( String.valueOf( i ) );
if( HxexStringUtils.isEmpty( content ) )
{
break;
}
else
{
Selected s = new Selected();
s.setItem( String.valueOf( i ) );
s.setContent( content );
s.setSelectquestion( select );
set.add( s );
}
}
select.setSelecteds( set );
addMessage( request, "selectQuestion.add.success" );
// 清空form中的信息
SelectQuestionForm selectform = (SelectQuestionForm)form;
selectform.setAnswer( null );
selectform.setScore( null );
selectform.setTitle( null );
// 返回到试卷信息录入页面
return addin( mapping, form, request, response );
}
/**
* 进入选择题修改页面
*/
public ActionForward updatein( ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response )
throws IOException, ServletException
{
// 得到用户提交的参数
SelectQuestionForm selectform = (SelectQuestionForm)form;
// 得到要修改的选择题的对象
SelectQuestionDAO dao = DAOFactory.getDao( SelectQuestionDAO.class );
SelectQuestion question = dao.findById( selectform.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
{
// 得到用户提交的参数
SelectQuestionForm selectform = (SelectQuestionForm)form;
// 得到原选择题的信息
SelectQuestionDAO dao = DAOFactory.getDao( SelectQuestionDAO.class );
SelectQuestion question = dao.findById( selectform.getId(), false );
// 更新数据库
question = HxexBeanUtils.copyProperties( question, form );
// 更新选项信息
Iterator<Selected> selecteds = question.getSelecteds().iterator();
while( selecteds.hasNext() )
{
Selected s = selecteds.next();
s.setContent( request.getParameter( s.getItem() ) );
}
addMessage( request, "selectQuestion.update.success" );
// 返回到列表页面
return list( mapping, form, request, response );
}
/**
* 选择题删除方法
*/
public ActionForward delete( ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response )
throws IOException, ServletException
{
// 得到用户提交的参数
SelectQuestionForm selectform = (SelectQuestionForm)form;
// 删除选择题对象
SelectQuestionDAO dao = DAOFactory.getDao( SelectQuestionDAO.class );
SelectQuestion question = dao.findById( selectform.getId(), false );
TestPaper paper = question.getTestpaper();
paper.getSelectquestions().remove( question );
dao.makeTransient( question );
addMessage( request, "selectQuestion.delete.success" );
// 返回列表页面
return list( paper.getId(), mapping, request );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -