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

📄 teacheraction.java

📁 学生成绩管理系统
💻 JAVA
字号:
package com.stuman.web.struts.action;

import java.lang.reflect.InvocationTargetException;
import java.sql.SQLException;
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.validator.DynaValidatorForm;

import com.stuman.dao.ClassesDAO;
import com.stuman.dao.EnrolDAO;
import com.stuman.dao.StudentDAO;
import com.stuman.dao.TeacherDAO;
import com.stuman.domain.Classes;
import com.stuman.domain.Course;
import com.stuman.domain.Enrol;
import com.stuman.domain.EnrolId;
import com.stuman.domain.Student;
import com.stuman.domain.Teacher;
import com.stuman.util.DAOFactory;
import com.stuman.util.PageBean;

public class TeacherAction extends BaseAction {

	private TeacherDAO teacherDao;

	private ClassesDAO classesDAO;

	private StudentDAO studentDAO;

	private EnrolDAO EnrolDAO;

	public TeacherAction() {
		teacherDao = DAOFactory.getInstance().createTeacherDAO();
	}

	public TeacherDAO getTeacherDAO() {
		if (this.teacherDao != null) {
			return this.teacherDao;
		} else {
			teacherDao = DAOFactory.getInstance().createTeacherDAO();
			return this.teacherDao;
		}
	}

	public ActionForward doDefault(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		// return null;
		return getTeacherList(mapping, form, request, response);
	}

	/**
	 * 取的老师列表
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward getTeacherList(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		PageBean page = new PageBean();
		int currentPage = request.getParameter("currentPage") == null ? 1
				: new Integer(request.getParameter("currentPage")).intValue();
		page.setRecordsPerPage(2);
		page.setCurrentPage(currentPage);
		page.setQueryString("from Teacher tch");
		PageBean page2 = this.getTeacherDAO().getTeacherList(page);
		request.setAttribute("splitPage", page2);
		// return null;
		return mapping.findForward("getList.sucess");
	}

	/**
	 * 添加一个老师信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward addTeacher(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		DynaValidatorForm dform = (DynaValidatorForm) form;
		Teacher tch = new Teacher();
		try {
			this.getBeanUtilsBean().copyProperties(tch, dform);
			this.getTeacherDAO().saveTeacher(tch);
			log.info("tch==" + tch);
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		tch=null;
		return getTeacherList(mapping, form, request, response);
	}

	/**
	 * 删除一个老师信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward deleteTeacher(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String stuId = request.getParameter("id");

		this.getTeacherDAO().deleteTeacherByID(stuId);
		return getTeacherList(mapping, form, request, response);
	}

	/**
	 * 取得一个老师信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward getEditTeacher(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String tchId = request.getParameter("id");
		log.info("tch===" + tchId);
		Teacher stu = this.getTeacherDAO().getTeacherByID(tchId);
		log.info("stu" + stu);
		try {
			this.getBeanUtilsBean().copyProperties(form, stu);
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return mapping.findForward("getTeacher.sucesss");
	}

	/**
	 *更新一个老师信息
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward updateTeacher(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		DynaValidatorForm dform = (DynaValidatorForm) form;
		Teacher tch = new Teacher();
		try {
			this.getBeanUtilsBean().copyProperties(tch, dform);
			this.getTeacherDAO().saveTeacher(tch);
			log.info("upate tch==" + tch);
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return getTeacherList(mapping, form, request, response);
	}

	/**
	 * 初始化老师可接受的班级和课程(进入选择学生的第一步)
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward initSelectStu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String regedit = "0";
		if (request.getParameter("regedit") != null) {
			if (Integer.parseInt(request.getParameter("regedit")) != 0) {
				regedit = request.getParameter("regedit");
			}
		}
		PageBean page = new PageBean();
		int currentPage = request.getParameter("currentPage") == null ? 1
				: new Integer(request.getParameter("currentPage")).intValue();

		page.setRecordsPerPage(2);
		page.setCurrentPage(currentPage);
		page.setQueryString("from Classes classes where classes.teacher.id=?");
		page.setValues(new Object[] { request.getSession().getAttribute(
				"teacherId").toString() });
		PageBean page2 = this.getClassesDAO().getClassesListForTeacher(page);
		request.setAttribute("splitPage", page2);
		request.setAttribute("regedit", regedit);
		return mapping.findForward("getClassesCourse.sucesss");
	}

	/**
	 * 老师接受此学生
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward regeditStu(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String stuId = request.getParameter("id");
		String classesId = request.getParameter("classesId");
		Enrol enrol = new Enrol();
		Student stu = new Student();

		stu.setId(stuId);
		Classes cla = new Classes();
		cla.setId(classesId);
		EnrolId id = new EnrolId();
		id.setClasses(cla);
		id.setStudent(stu);
		enrol.setId(id);
		enrol.setClasses(cla);
		enrol.setStudent(stu);
		enrol.setAccept("1");
		this.getEnrolDAO().updateEnrol(enrol);
		return initSelectStu(mapping, form, request, response);
	}

	/**
	 * 初试化一个班级的选择了课程还未被老师接受学生列表
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward initOpenSelectStu(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {

		String courseId = request.getParameter("id");
		String classesId = request.getParameter("classesId");

		StringBuffer str = new StringBuffer();
		str
				.append("select distinct  stu.* from  student stu,course cou,classes cla,enrol enr");
		str
				.append(" where stu.id=enr.stu_id and enr.class_id=cla.id  and enr.accept!='1' ");
		str.append(" and cla.cour_id=").append(courseId)
				.append(" and cla.id= ").append(classesId).append(
						" and cla.tea_id= ").append(
						request.getSession().getAttribute("teacherId")
								.toString());
		System.out.println("str===" + str.toString());
		List list = this.getStudentDAO().getStuForTea(str.toString());
		//  
		request.setAttribute("list", list);
		request.setAttribute("classesId", classesId);
		return mapping.findForward("getCourseStu.sucesss");
	}

	/**
	 * 初始化老师要给此班级的学生打分的列表
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward initRegeditStuSource(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {
		String courseId = request.getParameter("id");
		String classesId = request.getParameter("classesId");

		StringBuffer str = new StringBuffer();
		str
				.append("select distinct  stu.* from  student stu,course cou,classes cla,enrol enr");
		str
				.append(" where stu.id=enr.stu_id and enr.class_id=cla.id  and enr.accept ='1' ");
		str.append(" and cla.cour_id=").append(courseId)
				.append(" and cla.id= ").append(classesId).append(
						" and cla.tea_id= ").append(
						request.getSession().getAttribute("teacherId")
								.toString());
		System.out.println("str===" + str.toString());
		List list = this.getStudentDAO().getStuForTea(str.toString());
		//  
		request.setAttribute("list", list);

		request.setAttribute("classesId", classesId);
		request.setAttribute("courseId", courseId);

		return mapping.findForward("initRegeditStuSource.sucesss");
	}
/**
 * 得到此学生的有关信息(基本信息,和选课学分)
 * @param mapping
 * @param form
 * @param request
 * @param response
 * @return
 */
	
	public ActionForward getStuInfo(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		String stuId = request.getParameter("id");
		String courseId = request.getParameter("courseId");
		String classesId = request.getParameter("classesId");

		Student stu = this.getStudentDAO().getStudentByID(stuId);
		EnrolId enId = new EnrolId();
		Classes cla = new Classes();
		cla.setId(classesId);
		Student student = new Student();
		student.setId(stuId);
		enId.setClasses(cla);

		enId.setStudent(student);
		Enrol enrol = this.getEnrolDAO().getEnrolByID(enId);
		request.setAttribute("currentStu", stu);

		request.setAttribute("classesId", classesId);
		request.setAttribute("courseId", courseId);
		  System.out.println("enrol.accept="+enrol.getAccept());
		request.setAttribute("enrol", enrol);
		return mapping.findForward("getStuInfo.sucesss");
	}

	/**
	 * 给此学生的选择的课程打分
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 */
	public ActionForward regeditStuSourse(ActionMapping mapping,
			ActionForm form, HttpServletRequest request,
			HttpServletResponse response) {

		String stuId = request.getParameter("stuId");
		String score = request.getParameter("score");
		String classesId = request.getParameter("classes");
		String accept = request.getParameter("accept");
		
		System.out.println("stuId="+stuId+"score="+score+"classesId="+classesId+"accept="+accept);
		
		EnrolId enId = new EnrolId();
		Classes cla = new Classes();
		cla.setId(classesId);
		Student student = new Student();
		student.setId(stuId);
		enId.setClasses(cla);

		enId.setStudent(student);
		
		Enrol enrol=new Enrol();
		enrol.setId(enId);
		enrol.setScore(score);
		enrol.setAccept(accept);
		try {
			this.getEnrolDAO().upateEnrolForTea( score, classesId, stuId);
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		return initRegeditStuSource(mapping, form, request, response);
	}

	public ClassesDAO getClassesDAO() {

		if (this.classesDAO == null) {
			classesDAO = DAOFactory.getInstance().createClassesDAO();
		}
		return classesDAO;
	}

	public StudentDAO getStudentDAO() {
		if (this.studentDAO == null) {
			studentDAO = DAOFactory.getInstance().createStudentDAO();
		}
		return studentDAO;
	}

	public EnrolDAO getEnrolDAO() {
		if (this.EnrolDAO == null) {
			EnrolDAO = DAOFactory.getInstance().createEnrolDAO();
		}
		return EnrolDAO;
	}

}

⌨️ 快捷键说明

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