资源描述
综 合 实 训题 目: 专 业: 班 级: 姓 名: 指导老师: 答辩时间: 大连工业大学职业技术学院摘 要学分制已成为各大院校管理学生中不可或缺的一部分,在重多高校中得到了广泛的应用。总的说来,学分制就是通过集中学生的文化课程以及相应的考勤信息等,对学生的综合素质进行评定。实现学生考勤系统现代化的根本途径是信息化、系统化。学生考勤管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求。应用程序功能完备,易使用等特点。 经过分析,我们使用 sun Microsystems公司的 jsp技术进行开发, 利用Eclipse提供的MyEclipse面向对象的开发工具.其方便快捷的多窗口界面,控制台异常报错,等功能简化了开发时间,通过插件机制来灵活地构件开发环境。从而在短时间内建立系统应用原型,然后对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成考勤信息管理的全过程,包括每个考勤事件,例如事假、病假、迟到、早退、缺席及其他有价值的考勤信息分配一个唯一的考勤编号,并根据此编码在计算机中建立固定资产信息库,对考勤信息的录入、修改、删除、统计等进行管理,使管理人员可对学生的具体信息(或模糊信息)向进行跟踪,随时掌握某个(些)学生、某个(些)班级、某个(些)系部的具体考勤情况,减少考勤记录丢失现象,解决查找、统计困难等问题,提高管理人员的工作效率。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我们将以开发一套学生考勤管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 在系统开发中我们使用MyEclipse插件控件, MS的JDBC驱动,连接MS SQL Server2000数据库,将存在数据库的信息通过界面显示出来,并进行修改,查询等操作。关键字:JSP、MyEclipse、Tomcat、SQL Server。ABSTRACTThe credit system has become each great college management student to win necessary of a part, got an extensive application in the much more heavy high school.Always say that come, the credit system is the cultural course which passes to gather a high school student and correspond of test frequently an information etc., carry on assess to the students comprehensive character.The basic path which carries out a student to test frequently a system modernization is frequentlyinformation-based and systematize.Students testing to frequently manage system is frequentlya typical information management system(MIS), its development mainly includes the application develop of procedure of establishment and maintenance and head of backstage database 2.Request that starting to build up the data consistency and the integrity is strong to the former, the data safety good database.But then request to the latter.The applied procedure function is complete, easy usage etc. characteristics.Through analysis, the sun Microsystems of our usages jsp technique of the company carries on a development, make use of the Eclipse provide of the MyEclipse face to the development tool of object.Its convenience is fast of many window way interface, control pedestal the abnormality report be wrong, wait function to simplify development time and pass a plug-in mechanism come vividly Gou piece development environment.Build up system application prototype in the in a short time thus, then start prototype system to carry on need Die generation to the beginning, continuously revise with improvement, until the formation customer be satisfied with of can go system.The whole system from match an operation simple, interface amity, vivid, practical, safety of the request set out and complete to test frequently information management of whole processes, include each one to test frequently affairs, for example personal leave, sick leave, be late, leave early, absence and other worthy test frequently an information to assign 1 uniquely tests frequently serial number, and according to this coding is in the calculator build up a fixed assets information database, carry on a management towards testing frequently a record of information go into, modify, delete, statistics wait, make manager can to the students concrete information(or misty information) to carry on follow, at any time control a certain(some) student, a certain(some) class, a certain(some) fasten a concretely test of the department frequently circumstance, reduce to test to frequently record to throw to lose phenomenon, resolve to check to seek, statistics difficulty etc. problem, exaltation the managers work efficiency.Therefore, development so a set of management software become having much of a necessary affair, in the underneath of each one we will with develop a set of student to test to frequently manage system for example, discuss its development process and involve of problem and resolve a method.The MyEclipse plug-in of our usage controls a piece in the system the development, the MS JDBC drive, the Server2000 of the conjunction MS SQL database, pass the information of existence databases interface manifestation to come out, and carry on a modification, search etc. operation.Key words: JSP, MyEclipse, Tomcat, SQL Server.目录一、实训任务书1二、任务分配表3三、开发进度表4四、需求分析54.1可行性分析报告54.2背景54.3系统开发的重点与难点54.4可行性分析64.5结论6五、总体设计75.1用例图75.2模块图75.3功能模块描述95.4流程图:95.5数据字典12六、详细设计166.1.1请假信息录入16七、主要代码177.1请假信息管理177.1.1请假信息录入177.2出勤信息管理227.2.1出勤信息录入功能227.2.2出勤信息维护247.2.2.1出勤信息资料查看247.2.2.2授课表查看25八、个人总结28九、致谢信29十、参考资料30I一、实训任务书1.实训题目学生考勤系统2.题目来源职业技术学院计算机系网络办公 3.题目类型项目开发4.实训目标通过该综合实训课程的有效组织与实施,学生应该掌握的核心能力和关键能力有:1.编写代码的能力2.编写设计文档的能力3.编写测试文档的能力4.团队协作的能力5.学习新技术新工具的能力5.实训内容本次综合实训的内容主要是学生考勤系统,在该系统中,围绕计算机系教师办公的需求主要完成以下几个模块的内容: 学生信息导入功能,数据备份功能,系书记请假信息维护功能,教师考勤信息维护功能,出勤信息统计功能,数据打印功能,基础数据维护功能,权限管理功能等。6.实训环境硬件环境:CPU :PIII以上,内存:512MB以上,硬盘:40GB以上软件环境:JAVA方向:IDE:eclipse3.2 ,JDK:jdk1.5,WEB服务器:tomcat5.0,PLUGIN: struct1.1,DBMS:SQL Server2000,开发软件:CVS 7.实训要求(1)搭建好开发环境,测试后能稳定运行;(2)需要安装杀毒软件,防止病毒感染,影响项目开发;(3)项目开发需要团队协作一起开发,培养团队精神;(4)按时到指定的机房进行项目开发;(5)编码编程风格要完全按照规定书写;(6)测试文档要严格按照规定格式书写;(7)项目使用手册要完全按照规定模版书写;(8)要按照老师的进度表保质保量的完成阶段开发任务。8.项目开发步骤(1)需求分析,掌握办公自动化系统的各项业务流程;(2)总体设计,完成整个系统的模块架构;(3)详细设计,完成数据库字典的设计;(4)详细设计,设计画面及其处理说明;(5)编写代码,按照规范书写;(6)项目测试,按照规范书写;(7)撰写使用手册;(8)上交项目源代码、测试文档和使用手册。9.时间安排序 号内 容时 间日 期1需求分析完成整个系统的模块架构第1周8.278.312完成数据库字典的设计第2周3完成画面设计及其处理说明第3周4编写代码第4周5测试,撰写使用手册第5周总计5周二、任务分配表模块名称一级子模块二级子模块编写人请假信息管理请假信息录入屈嘉兴请假信息管理请假信息查询屈嘉兴请假信息修改屈嘉兴请假信息删除屈嘉兴出勤信息管理出勤信息录入屈嘉兴出勤信息管理出勤信息查询屈嘉兴出勤信息修改屈嘉兴出勤信息删除屈嘉兴考勤信息统计考勤信息统计李健详细考勤信息李健基础数据管理教师授课表管理教师授课表查询卢霖教师授课表添加卢霖教师授课表修改卢霖教师授课表删除卢霖教师信息管理教师信息查询郭永珍教师信息添加郭永珍教师信息修改郭永珍教师信息删除郭永珍教师信息导入屈嘉兴学生信息管理学生信息查询张悦学生信息添加张悦学生信息修改张悦学生信息删除张悦学生信息导入屈嘉兴班级信息管理班级信息查询王宇波班级信息添加王宇波班级信息修改王宇波班级信息删除王宇波班级信息导入屈嘉兴系部信息管理系部信息查询王云鹏系部信息添加王云鹏系部信息修改王云鹏系部信息删除王云鹏系部信息导入屈嘉兴权限管理角色管理屈嘉兴成员管理成员查询赵微添加成员赵微删除成员赵微角色权限设置赵微登录赵微三、开发进度表四、需求分析4.1可行性分析报告我们小组的信息系统开发课程设计题目是:学生考勤管理系统。系统开发的总的设计目标是实现学生考勤管理的系统化、规范化和自动化,实现对学生的考勤信息进行集中统一的管理。本系统主要实现对学生考勤信息的管理,主要功能为管理有关请假、出勤的信息等。本系统结构分为请假信息管理模块,出勤信息管理模块,考勤考勤信息统计模块,基础数据管理模块、权限管理模块,数据导入模块。请假信息管理部分有两方面的功能,可以对请假信息进行录入,可以对请假信息进行维护。出勤信息管理同样也分为两方面的功能,可以对出勤信息进行录入,可以对出勤信息进行维护。考勤信息统计主要完成对学生所有考勤信息的统计功能。基础数据管理可以显示当前数据库中的所有基础数据信息,这些信息包括:教师授课表、教师资料、学生资料、班级资料、系部资料,可以对这些基础数据进行维护。权限管理可以显示数据库中所有登录帐号的分组情况,即“角色”,及每个“角色”的权限,可以对登录帐号信息进行维护,数据导入可以从一个xls文件将其内容导入到数据中。可见,本系统并不复杂,主要解决的问题是利用关键字对数据库进行查询。4.2背景近年来,随着大学中学分制的普及,各高校对学生的考勤信息管理的要求日益严格,有关学生的各位考勤信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致学分管理上的混乱,人力与物力过多浪费,在学生考勤管理上人力及精力的过度增加,从而使教务部的负担过重,影响整个学生学分制准确性和公平性,因此,必须制定一套合理、有效,规范和实用的学生考勤管理系统,对学生的考勤信息进行集中统一的管理。另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。学生考勤信息管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。我们小组开发学生考勤信息管理系统就是采用现代化的信息管理方式代替手工管理方式,提高学生学公制管理工作效率,作到信息的规范管理,科学统计和快速查询,让学分制更快更准更好的为学校、学生服务。从以前的手工管理的记录中我们可以发现这样的问题:检索速度慢、效率低因为每学期学生的请假、迟到、早退、缺席等影响学生学生的考勤类问题数据量相当庞大,将学生的各种考勤信息准确地分门别类,快速检索,手工进行非常困难,往往是终于查到了所需学生的考勤信息,但由于管理人员的精神疲劳等原因,导致学生的考勤信息被误报,重报,导致学生的学分计算失去了准确性。学分制影响的院校与日剧增,这个问题也日渐突出。登记、统计工作量大登记、统计频率越大,说明学分制的影响作用越大,然而随之而来的大量的登记、 统计等的处理,其工作量之大,往 往是人工操作所难以胜任的。而且经常会出现这样那样的差错。考勤信息统计工作难。学生的考勤信息应根据学生的事先/事后说明及时更改学生的考勤记录类型,然而由于学生考勤信息记录量的增加,加上管理不严等原因,使学生的考勤统计工作难以及时完成,学生的学分的估量也就难以得到保证。4.3系统开发的重点与难点 系统出现了一些技术难点大致如下:1、建立合理的表结构,避免数据冗余 各表通过特定字段实现不同表的数据连接,避免数据冗余,需要设计简洁高效的表结构。2、建立相当的系统安全性登录用户身份的验证机制的设计、操作页面的权限保护。3、建立严密的数据表操作机制同一表有可能在多个模块中被修改,所以严密的数据表操作机制的建立十分比较困难的,但也是必须的。除了设计时必须有相当程度的考虑,在编制时更应加强程序逻辑的可靠性和程序调试的全面性。4.4可行性分析1、技术可行性此次信息系统开发是大学专业知识的一次综合应用与提高,我们小组可以使用个人电脑完成系统开发。组内计算机配置肯定能满足系统开发的要求。我们小组选用数据库工具MS SQL SERVER 2000,应用程序开发工具Eclipse 3.2,开发工具插件MyEcipse 5,Office程序组以及网络传输工具。我们小组的成员均有计算机,配置是Pentium4 1.5G,256M以上内存,80G以上硬盘,可连网。小组成员之间可以通过QQ或电话进行即时交流,协调开发工作,解决开发工作中出现的问题。 就技术力量来说,我们小组可以完成此次开发工作。开发过程中会出现许多问题,有我们预想之中的,也有一些没有我们预想到,但,我们有信心克服一切困难。该学期,我们小组各成员已经学习了SQL SERVER,对jsp网络编程技术有一定的了解,有些成员熟悉计算机原理,能解决常见的硬件故障和硬件选择。目前,各种教务管理信息系统已得到了大量应用,有许多可供参考的成功系统。而且,网上有许多关于jsp编程的资料和SQL SERVER方面的资料。 从技术角度考虑,此信息系统开发可行。2、经济可行性目标系统开发需求比较低,加上具有成熟的软硬件环境,所以在软硬件的支出上十分有限。而且,目标系统并不是十分的复杂,开发的周期较短,人员经济支出有限。当系统开发完实际运行后,将很大程度上提高计算机的功能,在为使用者带来便利的同时,也为系统的进一步推广创造了条件。这带来的经济回报将远超过支出,并且最重要的一点是该软件的开发可以给我们对系统的开发有个全面的认识。从经济角度考虑,此信息系统开发可行。3、法律可行性法律上可行整个系统由于是自行开发,自行使用,所以系统本身不存在法律上的版权争议。在服务器软件方面,应该使用正版软件,因为整个系统尽管是开发给内部使用,但它毕竟很多部分还是要依靠Internet的,一旦服务器连接到Internet上,它的操作系统可能会被Microsoft跟踪,如果不是正版软件,将不得不面临民事诉讼的风险。4.5结论 根据以上的可行性研究,我们小组认为开发此系统的条件已经具备,可以开始进行开发。五、总体设计5.1用例图5.2模块图5.3功能模块描述系统共分六大模块:请假信息管理、出勤信息管理、考勤信息统计、基础数据管理、权限管理、数据导入。请假信息管理:请假信息管理部分有两方面的功能,可以对请假信息进行录入,可以对请假信息进行维护出勤信息管理:出勤信息管理同样也分为两方面的功能,可以对出勤信息进行录入,可以对出勤信息进行维护。考勤信息统计:考勤信息统计主要完成对学生所有考勤信息的统计功能。基础数据管理:基础数据管理可以显示当前数据库中的所有基础数据信息,这些信息包括:教师授课表、教师资料、学生资料、班级资料、系部资料,可以对这些基础数据进行维护。权限管理:权限管理可以显示数据库中所有登录帐号的分组情况,即“角色”,及每个“角色”的权限,可以对登录帐号信息进行维护。数据导入:数据导入可以从一个xls文件将其内容导入到数据中,此模块将估为一个小的子功能嵌入到基础数据管理模块中5.4流程图:5.5数据字典共涉及到9张表数据表:班级信息表、课程信息表、系部表、考勤信息表、登录表、考勤教师信息表、教师授课信息表、学生信息表、用户角色表班级信息表(T_Class):课程信息表系部表考勤信息表登录表考勤教师信息表教师授课信息表学生信息表用户角色表数据库关系图六、详细设计6.1请假信息管理6.1.1请假信息录入(1)功能描述: 该部分可以对一个学生进行请假登记操作,重复记录将不被记录(2)画面示例:(3)操作说明:本区域功能为输入数据库中所对应的学生学号,学生姓名,学生所在班组,三项数据必须相对应,如果有一项不对,请假信息就不能添加。请假日期使用日期表选择请假日期,日期会自动显示在请假日期文本框中;请假课程为下拉列表选择要请假课程,课程为所有专业学科的课程;请假节数不能大于结束课节,弹出对话框提示登记课节错误;选择请假的类型只能选择一种类型不能重复选择;按动提交铵钮弹动对话框(如图)请假信息添加成功弹出对话框并显示请假节数,点示确定,请假信息添加成功。七、主要代码7.1请假信息管理7.1.1请假信息录入public ActionForward query_add(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) ArrayList depts=null;ArrayList courses=null;Date date=new Date();depts=l.getDepts();courses=l.getCourses();request.setAttribute(courses, courses);request.setAttribute(depts, depts);request.setAttribute(date, date);return mapping.findForward(leaves_add);public ActionForward add(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) Leaves_editForm f=(Leaves_editForm)form;String info=null;bean.DutysBean d=new bean.DutysBean();d.setStudent_id(f.getTxt_student_id().trim();d.setLeave_date(f.getTxt_date().trim();d.setLesson_from(f.getSlt_lesson_from();d.setLesson_to(f.getSlt_lesson_to();d.setType(f.getRdo_type().trim();d.setStudent_class_name(f.getTxt_student_class().trim();d.setStudent_name(f.getTxt_student_name().trim();d.setCourse_id(f.getSlt_course().trim();if(db.validate()!=null)request.setAttribute(info, 连接数据库初始化失败);return mapping.findForward(leave_back);String sql=null;info=l.add_info_check(d);if(info!=null)request.setAttribute(info, info);return mapping.findForward(add_back);for(int k=d.getLesson_from();k=d.getLesson_to();k+)sql=INSERT INTO T_Dutys + VALUES(+getID().trim()+,+d.getStudent_id().trim()+,+d.getLeave_date().trim()+,+k+,+d.getCourse_id().trim()+,+null+,请假,+d.getType().trim()+);d.setLesson(k);String temp_info=l.add_check(d,请假);if(temp_info!=null)if(info=null)info=temp_info+ .n;elseinfo+=(n+temp_info+ .n);elseif(l.add(sql) if(info=null)info=学生+d.getStudent_name()+(学号:+d.getStudent_id()+) +d.getLeave_date()+ 第+k+节课请假成功 .n;elseinfo+=(n学生+d.getStudent_name()+(学号:+d.getStudent_id()+) +d.getLeave_date()+ 第+k+节课请假成功 .n);else if(info=null)info=学生+d.getStudent_name()+(学号:+d.getStudent_id()+) +d.getLeave_date()+ 第+k+节课请假失败 .n;elseinfo+=(n学生+d.getStudent_name()+(学号:+d.getStudent_id()+) +d.getLeave_date()+ 第+k+节课请假失败 .n);request.setAttribute(info, info);return mapping.findForward(add_back);7.1.2请假信息维护7.1.2.1请假信息查询public ActionForward query(ActionMapping mapping, ActionForm af,HttpServletRequest request, HttpServletResponse response) Leaves_recordForm f = (Leaves_recordForm) af;bean.DutysBean d=new bean.DutysBean();String info=null;info=(String)request.getAttribute(info);ArrayList data=null;ArrayList depts=null;case_mark(af,request);if(f.getC_student_id()!=null)d.setStudent_id(f.getStudent_id().trim();if(f.getC_student_name()!=null)d.setStudent_name(f.getStudent_name().trim();if(f.getC_lesson()!=null)d.setLesson_from(f.getLesson_from();d.setLesson_to(f.getLesson_to();if(f.getC_student_class()!=null)d.setCourse_name(f.getStudent_class().trim();if(f.getC_student_dept()!=null)d.setStudent_dept_id(f.getStudent_dept().trim();if(f.getC_type()!=null)d.setType(f.getR_type().trim();data=l.gets(d);depts=l.getDepts();request.setAttribute(data, data);request.setAttribute(depts, depts);request.setAttribute(info, info);return mapping.findForward(leave_query_result);public ArrayList gets(bean.DutysBean duty_info)ArrayList data=null;bean.DutysBean leave=new bean.DutysBean();String query_sql=SELECT T_Dutys.duty_id,+ T_student_info.student_name,+ T_Dutys.leave_student_id,+ T_Dutys.leave_date,+ T_Dutys.leave_lesson,+ T_Dutys.leave_type,+ T_Class.class_name, + T_Course.course_name + FROM T_Dutys,T_class,T_student_info,T_dept,T_Course + WHERE T_Dutys.leave_student_id=T_student_info.student_id + AND T_Student_info.student_class=T_class.class_id + AND T_Dept.dept_id=T_Class.class_dept + AND T_Course.course_id=T_Dutys.leave_course_id + AND record_type=请假;query_sql+=SqlValidate( duty_info);if(db.validate()!=null)return null;java.sql.ResultSet rs=null;rs=db.getRs(query_sql);if(rs=null )return null;try data=new ArrayList();while(rs.next()leave=new bean.DutysBean();leave.setDuty_id(rs.getString(duty_id);leave.setStudent_id(rs.getString(leave_student_id);leave.setStudent_name(rs.getString(student_name);leave.setLesson(rs.getInt(leave_lesson);leave.setLeave_date(rs.getString(leave_date).substring(0,10);leave.setCourse_name(rs.getString(course_name);leave.setType(rs.getString(leave_type);leave.setStudent_class_name(rs.getString(class_name);data.add(leave); catch (SQLException e) e.printStackTrace();return null;return data;public ArrayList getDepts()ArrayList depts=null;bean.DepartmentBean dept;if(db.validate()!=null)return null;java.sql.ResultSet rs=null;rs=db.getRs(select * from T_Dept);depts=new ArrayList();try while(rs.next()dept=new bean.DepartmentBean();dept.setDept_id(rs.getString(dept_id);dept.setDept_name(rs.getString(dept_name);depts.add(dept); catch (SQLException e) e.printStackTrace();return null;return depts;7.1.2.2请假信息修改public ActionForward edit(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) Leaves_editForm f=(Leaves_editForm)form;bean.DutysBean d=new bean.DutysBean();String info=null;String sql=null;d.setDuty_id(String)request.getParameter(hdn_leave_id);d=l.getSingle(d.getDuty_id().trim();d.setLesson(f.getSlt_lesson_from();d.setCourse_id(f.getSlt_course().trim();d.setLeave_date(f.getTxt_date().trim();d.setType(f.getRdo_type().trim();info=new dao.Duty().edit_check(d,修改);if(info=null)sql=update T_Dutys set +leave_lesson=+d.getLesson()+,+leave_course_id=+d.getCourse_id()+,+record_type=请假, +leave_type=+d.getType().trim()+, +leave_date=+d.getLeave_date().trim()+ +where duty_id=+d.getDuty_id().trim()+;if(l.edit(sql)request.setAttribute(info, 修改请假信息+d.getDuty_id()+成功);return mapping.findForward(leave_back);elserequest.setAttribute(info, 修改请假信息+d.getDuty_id().trim()+失败);request.setAttribute(leave_id, d.getDuty_id().trim();request.setAttribute(leave_re_edit, d);return mapping.findForward(leaves_re_edit);else request.setAttribute(info, info);request.setAttribute(leave_id, d.getDuty_id().trim();request.setAttribute(leave_re_edit, d);return mapping.findForward(leaves_re_edit);public ActionForward query_edit(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) bean.DutysBean data=(bean.DutysBean)request.getAttribute(leave_re_edit);String leave_id=(String)request.getParameter(leave_id).trim();String info=(String)request.getAttribute(info);ArrayList depts=null;ArrayList courses=null;tryif(leave_id=null)leave_id=(String)request.getAttribute(leave_id).trim();if(data=null)data=l.getSingle(leave_id.trim();catch(Exception ex)ex.printStackTrace();request.setAttribute(info, 数据读取失败);return mapping.findForward(leave_back);depts=l.getDepts();courses=l.getCourses();request.setAttribute(courses, courses);request.setAttribute(data, data);request.setAttribute(depts, depts);request.setAttribute(info, info);return mapping.findForward(leaves_query_edit);7.2出勤信息管理7.2.1出勤信息录入功能public ActionForward duty_add_query(ActionMapping mapping, ActionForm f,HttpServletRequest request, HttpServletResponse response) try request.setCharacterEncoding(GBK);response.setCharacterEncoding(GBK); catch (UnsupportedEncodingException e) e.printStackTrace();String info=null;info=(String)request.getAttribute(info);String teacher_id=null;teacher_id=T_00001;ArrayList courses=null;courses=duty.getCourse(teacher_id,null); ArrayList depts=null;depts=duty.getDepts();String cur_date=yasiolar.Date.getDate().trim();request.setAttribute(date, cur_date);request.setAttribute(courses, courses);request.setAttribute(depts, depts);request.setAttribute(info, info);return mapping.findForward(duty_add_query);public ActionForward add(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) try request.setCharacterEncoding(GBK);response.setCharacterEncoding(GBK); catch (UnsupportedEncodingException e) e.printStackTrace();DutyForm f=(DutyForm)form;LeavesBean dutyBean=new LeavesBean();String info=null;String teacher_id=null;String sql=null;teacher_id=(bean.LoginBean)request.getSession().getAttribute(login).getTb().getTeacher_id();dutyBean.setCourse_id(f.getSlt_lesson_name().trim();dutyBean.setLeave_lesson_from(f.getSlt_lesson_from();dutyBean.setLeave_lesson_to(f.getSlt_lesson_to();dutyBean.setReg_teacher
展开阅读全文