📄 examforwardaction.java
字号:
package com.zjxy.hibernate.action;
import java.util.List;
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 org.apache.struts.action.ActionMessage;
import org.apache.struts.actions.DispatchAction;
import org.hibernate.Session;
import org.hibernate.Transaction;
import com.zjxy.hibernate.HibernateSessionFactory;
import com.zjxy.hibernate.base.PageDAO;
import com.zjxy.hibernate.base.QuestionPaperManager;
import com.zjxy.hibernate.form.QuestionPaperForm;
import com.zjxy.hibernate.model.ExamForward;
import com.zjxy.hibernate.model.QuestionPaper;
import com.zjxy.hibernate.model.TitleSystem;
import com.zjxy.hibernate.pagerHelp.Pager;
import com.zjxy.hibernate.pagerHelp.PagerHelp;
public class ExamForwardAction extends DispatchAction{
/**
* 试卷信息一览画面显示
* @param actionMapping
* @param actionForm
* @param httpServletRequest
* @param httpServletresponse
* @return
*/
public ActionForward display(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletresponse) {
// 用于输出到页面的记录集合
List clInfos = null;
String sqlBean = "from com.zjxy.hibernate.model.QuestionPaper";
// 记录总行数
int totalRows = 0;
Session session=HibernateSessionFactory.currentSession();
List list = session.createQuery(sqlBean).list();
HibernateSessionFactory.closeSession();
totalRows = list.size();
PageDAO pageDAO = new PageDAO();
// 取得当前表中的总行数
// 通过PagerHelper类来获取用于输出到页面的pager对象
Pager pager=PagerHelp.getPager(httpServletRequest,totalRows);
// 取出从startRow开始的pageSize行记录
try {
clInfos = pageDAO.findWithPage(pager.getPageSize(), pager.getStartRow(), sqlBean);
} catch (Exception ex) {
servlet.log(ex.toString());
}
//把输出的记录集和pager对象保存到request对象中
httpServletRequest.setAttribute("CLINFOS", clInfos);
httpServletRequest.setAttribute("PAGER", pager);
return actionMapping.findForward("display");
}
public ActionForward displaytest(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletresponse) {
// 用于输出到页面的记录集合
List clInfos = null;
String sqlBean = "from com.zjxy.hibernate.model.QuestionPaper";
// 记录总行数
int totalRows = 0;
Session session=HibernateSessionFactory.currentSession();
List list = session.createQuery(sqlBean).list();
HibernateSessionFactory.closeSession();
totalRows = list.size();
PageDAO pageDAO = new PageDAO();
// 取得当前表中的总行数
// 通过PagerHelper类来获取用于输出到页面的pager对象
Pager pager=PagerHelp.getPager(httpServletRequest,totalRows);
// 取出从startRow开始的pageSize行记录
try {
clInfos = pageDAO.findWithPage(pager.getPageSize(), pager.getStartRow(), sqlBean);
} catch (Exception ex) {
servlet.log(ex.toString());
}
//把输出的记录集和pager对象保存到request对象中
httpServletRequest.setAttribute("CLINFOS", clInfos);
httpServletRequest.setAttribute("PAGER", pager);
return actionMapping.findForward("displaytest");
}
public ActionForward addDisplay(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest httpServletRequest,
HttpServletResponse httpServletresponse) {
return actionMapping.findForward("addDisplay");
}
/**
* 保存试卷
* @param actionMapping
* @param actionForm
* @param httpServletRequest
* @param httpServletresponse
* @return
*/
public ActionForward add(ActionMapping actionMapping,
ActionForm actionForm,
HttpServletRequest request,
HttpServletResponse httpServletresponse) {
String name=request.getParameter("name");
String sid[]=request.getParameterValues("questionid");
String score[]=request.getParameterValues("score");
Session s=HibernateSessionFactory.currentSession();
Transaction t=s.beginTransaction();
QuestionPaper qp=new QuestionPaper();
qp.setName(name);
s.save(qp);
if(sid!=null){
for(int i=0;i<sid.length;i++){
TitleSystem ts=(TitleSystem)s.load(TitleSystem.class,Integer.valueOf(sid[i]));
ExamForward ef=new ExamForward();
ef.setAnswer(ts.getAnswer());
ef.setKemuID(ts.getKemuID());
ef.setQuestion(ts.getQuestion());
ef.setQuestionNo((i+1));
ef.setTikuNO(ts.getTikuNO());
ef.setQuestionpaper(qp);
ef.setScore(Long.parseLong(score[i]));
s.save(ef);
}
}
t.commit();
HibernateSessionFactory.closeSession();
return actionMapping.findForward("todisplay");
}
/**
* 题目信息删除
* @param actionMapping
* @param actionForm
* @param request
* @param response
* @return
*/
public ActionForward delete(ActionMapping actionMapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
QuestionPaperManager questionPaperManager = new QuestionPaperManager();
// 从页面取得要删除数据的sequenceID值
int sequenceID = Integer.parseInt(request.getParameter("sequenceID"));
questionPaperManager.delete(sequenceID);
return actionMapping.findForward("deleteSuccess");
}
/**
* 试卷信息查询
* @param actionMapping
* @param actionForm
* @param request
* @param response
* @return
*/
public ActionForward search(ActionMapping actionMapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) {
QuestionPaperForm questionPaperForm = (QuestionPaperForm) form;
QuestionPaperManager questionPaperManager = new QuestionPaperManager();
String name = questionPaperForm.getPaperNameSearch();
// 用于输出到页面的记录集合
List clInfos = null;
String sqlBean = "from com.zjxy.hibernate.model.QuestionPaper as questionPaper where questionPaper.name=?";
// 记录总行数
int totalRows = 0;
List list = questionPaperManager.getQuestionPaperList();
totalRows = list.size();
PageDAO pageDAO = new PageDAO();
// 取得当前表中的总行数
// 通过PagerHelper类来获取用于输出到页面的pager对象
Pager pager=PagerHelp.getPager(request,totalRows);
// 取出从startRow开始的pageSize行记录
try {
clInfos = pageDAO.findWithPage_search(pager.getPageSize(), pager.getStartRow(), sqlBean, name);
} catch (Exception ex) {
servlet.log(ex.toString());
}
if (clInfos.size() == 0) {
request.setAttribute("noRecord", new ActionMessage("oes.teacher.error.noRecord"));
}
Integer total = Integer.valueOf(totalRows);
//把输出的记录集和pager对象保存到request对象中
request.setAttribute("TOTALROWS", total);
request.setAttribute("CLINFOS", clInfos);
request.setAttribute("PAGER", pager);
request.setAttribute("searchPage", new ActionMessage("searchPage"));
return actionMapping.findForward("searchSuccess");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -