?? classesaction.java
字號:
package cn.hxex.exam.action;
import java.io.IOException;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import cn.hxex.exam.dao.ClassesDAO;
import cn.hxex.exam.dao.DAOFactory;
import cn.hxex.exam.dao.TeacherDAO;
import cn.hxex.exam.form.ClassesForm;
import cn.hxex.exam.model.Classes;
import cn.hxex.exam.model.Teacher;
import cn.hxex.exam.struts.BaseAction;
import cn.hxex.exam.util.HxexBeanUtils;
import cn.hxex.exam.util.HxexStringUtils;
/**
* The action about class
*
* @struts.action
* name="classesForm"
* path="/manage/classes"
* scope="request"
* input="/manage/classes_add.jsp"
* validate="false"
* parameter="p"
*
* @struts.action-forward
* name="add"
* path="/manage/classes_add.jsp"
*
* @struts.action-forward
* name="list"
* path="/manage/classes_list.jsp"
*
* @struts.action-forward
* name="update"
* path="/manage/classes_update.jsp"
*
* @struts.action-forward
* name="classes_teacher"
* path="/manage/classes_teacher.jsp"
*
* @author galaxy
*
*/
public class ClassesAction extends BaseAction
{
protected final Log log = LogFactory.getLog(getClass());
/**
* 跳轉到班級信息錄入頁面
*/
public ActionForward addin(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
return mapping.findForward("add");
}
/**
* 保存班級信息業務處理方法
*/
public ActionForward save(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到頁面傳遞的參數,并賦值到生成Classes對象的實例
Classes classes = HxexBeanUtils.copyProperties(new Classes(), form);
// 得到ClassesDAO對象的實例
ClassesDAO dao = DAOFactory.getDao(ClassesDAO.class);
// 持久化Classes對象的實例
dao.makePersistent(classes);
// 設置提示信息
addMessage(request, "classes.meg.add.success");
// 清空ActionForm
ClassesForm cls = (ClassesForm) form;
cls.setTitle(null);
// 判斷是否執行的是增加班級信息時的保存工作
if (HxexStringUtils.isEmpty(cls.getId()))
{
// 如果進行的增加操作,則返回到班級信息錄入頁面
return addin(mapping, form, request, response);
}
else
{
cls.setId( null );
// 如果進行的修改保存的操作,返回到班級信息列表頁面
return list(mapping, form, request, response);
}
}
/**
* 班級信息列表Action方法
*/
public ActionForward list(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到ClassesDAO對象的實例
ClassesDAO dao = DAOFactory.getDao(ClassesDAO.class);
// 得到所有的班級對象的實例
List<Classes> classes = dao.findAll();
// 將班級對象的集合保存為Request的屬性
request.setAttribute("classes", classes);
// 跳轉到班級信息列表頁面
return mapping.findForward("list");
}
/**
* 得到要修改的班級信息
*/
public ActionForward updatein(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到用戶提交的參數
ClassesForm classForm = (ClassesForm) form;
// 得到ClassesDAO對象的實例
ClassesDAO dao = DAOFactory.getDao(ClassesDAO.class);
// 得到用戶要修改的Calsses對象的實例
Classes c = dao.findById(classForm.getId(), false);
// 判斷用戶所要修改的Classes對象是否存在
if (c != null)
{
// 用戶所要修改的Calsses對象存在,那么將該對象保存到請求的屬性中
request.setAttribute("classesForm", c);
// 跳轉到班級信息修改頁面
return mapping.findForward("update");
}
else
{
// 設置班級信息不存在的提示信息
addMessage(request, "classes.msg.update.notexist");
// 返回班級信息列表頁面
return list(mapping, form, request, response);
}
}
/**
* 刪除班級信息
*/
public ActionForward delete(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到用戶傳遞的參數
ClassesForm classes = (ClassesForm) form;
// 得到ClassesDAO對象的實例
ClassesDAO dao = DAOFactory.getDao(ClassesDAO.class);
// 檢索用戶要刪除的班級信息
Classes c = dao.findById(classes.getId(), false);
// 判斷該班級信息是否存在
if (c != null)
{
// 刪除該班級信息
dao.makeTransient(c);
// 設置提示信息
addMessage(request, "classes.msg.delete.success");
}
else
{
// 設置要刪除的記錄不存在的提示信息
addMessage(request, "classes.msg.update.notexist");
}
// 返回班級信息列表頁面
return list(mapping, form, request, response);
}
/**
* 進入班級任課教師維護頁面
*/
public ActionForward teacher(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到用戶傳遞的參數
ClassesForm classes = (ClassesForm) form;
// 得到ClassesDAO對象的實例
ClassesDAO classesdao = DAOFactory.getDao(ClassesDAO.class);
// 得到用戶所要修改的班級信息
Classes c = classesdao.findById(classes.getId(), false);
if (c != null)
{
// 設置班級信息
request.setAttribute("classes", c);
// 設置任課教師信息
request.setAttribute("inteachers", c.getTeachers());
// 得到TeacherDAO對象的實例
TeacherDAO dao = DAOFactory.getDao(TeacherDAO.class);
List<Teacher> teachers = dao.getNotInClassesTeacher( c.getId() );
request.setAttribute("notinteachers", teachers );
}
// 返回到班級任課教師維護頁面
return mapping.findForward("classes_teacher");
}
/**
* 保存班級任課教師
*/
public ActionForward saveteacher(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
// 得到用戶提交的數據
ClassesForm classes = (ClassesForm) form;
// 得到ClassesDAO對象的實例
ClassesDAO classesdao = DAOFactory.getDao(ClassesDAO.class);
// 得到用戶所維護的班級信息
Classes c = classesdao.findById(classes.getId(), false);
if (c != null)
{
// 清空班級的任課教師
c.getTeachers().clear();
// 得到任課教師的ID值(多個)
String[] tids = request.getParameterValues( "inteachers" );
if( tids!=null && tids.length>0 )
{
// 得到教師DAO對象的實例
TeacherDAO dao = DAOFactory.getDao(TeacherDAO.class);
for( int i=0; i<tids.length; i++ )
{
// 得到教師的信息
Teacher t = dao.findById( tids[i], false );
// 設置該教師為這個班級的授課教師
c.getTeachers().add( t );
}
}
// 設置班級任課教師成功信息
addMessage(request, "classes.msg.teacher.success");
}
// 返回班級信息列表頁面
return list( mapping, form, request, response );
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -