?? 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 + -