1、2 数据设计 2.1 相关数据库表说明如下:逻辑表名物理表名说明系统用户信息表User记录用户的的基本信息学生基本信息表Student记录学生的基本信息班级信息表Class记录班级的基本信息课程信息表Course记录课程基本信息学生选课表Stuchoose记录学生选课信息学生成绩表Stumart记录学生选课的成绩2.2 各表详细说明2.2.1 部门信息表(T_DEPT)逻辑字段物理字段类型(长度)规则字段说明部门IDDEPTID自动编号主键自动生成的长整型编号,具有唯一值部门编号DEPTCODE文本(30)非空采用部门编号实现部门间的隶属关系,最顶层部门编号为001、002第二层部门编号为00
2、1001、001002部门名称DEPTNAME文本(10)部门名称为非空且唯一数据地址ADDRESS文本(50)电话TELPHONE文本(20)描述DESC文本(255)说明部门职能等信息2.2.2 员工信息表(T_EMPLOYEE)员工IDEMPID长整型外键名称EMPNAME性别GENDER整型0/1: 男/女年龄AGE身份证号IDCARD文本(18)非空且唯一数据7政治面貌PARTY8毕业院校SCHOOL9专业MAJOR10职称TITLE11职位POST2.2.3 培训信息表(T_EDUCATION)培训IDEDUIDEDUNAME培训名称非空且唯一数据开始时间STARTDATE文本(1
3、2)开始日期 2008-08-08结束时间ENDDATE结束时间 2008-08-09内容CONTENT培训课程、内容及要求等2.3 数据源说明 采用JDBC-ODBC桥 DNS名为 employee3 系统功能设计3.1 部门信息管理部门信息通过部门树来显示,选中一个部门后首先显示该部门的基本信息,然后在部门信息下面选择功能:添加子部门、修改部门信息、删除部门信息。3.1.1 显示部门树一、 功能描述 部门树的显示是将部门的信息,通过其编号确定各个部门的父子关系,然后将此父子关系在显示页面上用树的方式显示出来。部门树上的每一个节点代表一个部门实体,选中部门节点后可以查看该部门的基本信息,并对
4、部门进行相应的操作。二、 功能实现部门树应该在每次进入部门管理功能的时候就打开,同时在整个部门管理的过程中都要使用到。 部门树的数据可以直接调用servlet来获取,获取到的每一个部门数据封装到一个部门对象里,让后放到ArrayList里面,再设置为数据共享 在部门树显示页面程序里将部门树显示出来。 部门树节点的层次关系通过部门编号来确定。部门编号规则参见“添加部门”功能说明。具体程序实现如下:层次类型备注Mhrm.dept.DeptService用来实现部门信息管理业务的JavaBean。获取部门树信息的方法为:ArrayList deptTree()hrm.dept.DeptInfo封装部
5、门信息的JavaBeanChrm.dept.DeptTreeAction获取部门信息的servlet,地址映射为/deptTreeV/dept/dept_tree.jsp显示部门树3.1.2 添加部门三、 功能描述通过部门信息添加页面录入新的部门信息:包括部门编号、部门名称、地址、电话和部门描述。数据规则如下: 部门编号是必填数据,且满足规则:如果输入的编号字符长度是N,则N必须是3的倍数;如果N=3,则此编号在数据表中应该不存在;如果N3,则编号的前N-3位字符串构成的上级部门编号在数据表中必须存在。 部门的名称是必填数据,并且在数据表中具有唯一性。 地址、电话、描述都不是必填数据,只需要根
6、据数据字段的长度限制录入数据的长度。四、 功能实现 选择“添加”按钮或者连接来添加部门。 首先在部门信息输入页面里面录入部门的基本信息,数据在录入过程或者提交前要根据上面的数据规则来进行验证。 数据提交后由专门的servlet调用JavaBean方法将数据插入到数据库中。 完成数据插入操作后,直接由该servlet转发到获取部门树的servlet,实现部门树的刷新。插入部门信息的方法为:boolean insertDept(DeptInfo dept)hrm.dept.DeptInsertAction添加部门信息的servlet,地址映射为/deptInserthrm.dept.DeptFor
7、mStruts自动封装客户端提交的部门信息的FormBean/dept/dept_add.jsp添加新部门的部门信息输入页面3.1.3 修改部门五、 功能描述通过部门信息修改该页面,修改部门基本信息中的部门名称、地址、电话和部门描述。 部门编号的修改涉及到组织机构图的调整,这里不作要求。六、 功能实现 选中一个部门节点后才能选择“修改部门”按钮或者连接来修改部门信息,根节点信息不能修改。 首先根据选中部门的ID,通过servlet调用JavaBean方法取得要修改的部门信息,再转发到部门信息修改页面。 将部门信息显示在修改页面上,其中部门ID作为隐藏域,部门名称、地址、电话和部门描述信息作为可
8、修改的数据显示出来。数据在修改的过程或者提交前要根据上面的数据规则来进行验证。 数据提交后由专门的servlet调用JavaBean方法修改数据库中的数据。 完成数据修改操作后,直接由该servlet转发到获取部门树的servlet,实现部门树的刷新。获取部门信息的方法为:DeptInfo getDept(String deptID)修改部门信息的方法为:boolean updateDept(DeptInfo dept)hrm.dept.DeptGetAction获取部门信息的servlet,地址映射为/deptGethrm.dept.DeptUpdateAction修改部门信息的servle
9、t,地址映射为/deptUpdate/dept/dept_edit.jsp修改部门信息输入页面3.1.4 删除部门七、 功能描述在部门树上选中一个部门节点后,点击删除按钮或者链接,对选中部门及其下属部门进行删除操作。如果选中部门及其下属部门中还有员工,则删除操作不能继续。八、 功能实现 选中一个部门节点后才能选择“删除部门”按钮或者连接来删除部门。 执行删除操作前,要先判断该部门及其下属部门有没有员工,如果没有则进行删除操作,反之则提醒用户不删除并放弃删除。 删除操作由专门的servlet调用JavaBean方法来删除数据库中的数据。 完成数据删除操作后,直接由该servlet转发到获取部门树
10、的servlet,实现部门树的刷新。删除部门信息的方法为:boolean delDept(String deptID)hrm.dept.DeptDelAction修改部门信息的servlet,地址映射为/deptDel3.2 员工信息管理员工信息管理模块主要实现员工信息的添加、修改、删除功能。3.2.1 员工列表九、 功能描述在进入员工信息管理界面后,首先显示的是部门树。在部门树上选中一个部门后,显示该部门的所有员工列表。然后再在员工列表中进行添加、修改、删除等操作。一十、 功能实现 选中一个部门,自动调用获取该部门的员工信息列表的servlet来获取员工信息。 将取到的数据共享后,转发到员工
11、列表页面。hrm.emp.EmpService用来实现员工信息管理业务的JavaBean。获取员工列表的方法为:ArrayList empList(String deptID)hrm.emp.EmpListAction获取员工列表的servlet,地址映射为/empListhrm.emp.EmpFormStruts自动封装客户端提交的员工信息的FormBean/emp/emp_list.jsp显示员工列表的页面3.2.2 添加员工一十一、 功能描述通过员工信息添加页面录入新的员工信息:包括部门ID、名称、性别、年龄、身份证号、政治面貌、毕业院校、专业、职称、职位。 员工的名称、性别、年龄、身份
12、证号是必填数据,其中年龄要求必须是小于100的整数,身份证号则要求具有唯一性。 政治面貌、毕业院校、专业、职称、职位都不是必填数据,只需要根据数据字段的长度限制录入数据的长度。一十二、 功能实现 选中一个部门,自动调用获取该部门的员工信息列表的servlet来获取员工信息列表。 选择“添加员工”来添加该部门的员工信息。 在员工信息输入页面里面录入员工的基本信息,部门ID作为隐藏域,其余数据在录入过程或者提交前要根据上面的数据规则来进行验证。 完成数据插入操作后,直接由该servlet转发到获取员工列表的servlet,实现员工列表的刷新。插入员工信息的方法为:boolean insertEmp
13、(EmpInfo emp)hrm.emp.EmpInfo封装员工信息的JavaBeanhrm.emp.EmpInsertAction添加员工信息的servlet,地址映射为/empInsert/emp/emp_add.jsp添加新员工信息的输入页面3.2.3 修改员工一十三、 功能描述通过员工信息修改页面录入员工更新后的信息:包括名称、性别、年龄、身份证号、政治面貌、毕业院校、专业、职称、职位。一十四、 功能实现 选中一个员工信息后,选择“修改”操作。 根据选中员工的ID,通过servlet调用JavaBean方法取得要修改的员工信息,再其转发到员工信息修改页面。 将员工信息显示在修改页面上,
14、其中员工ID、部门ID作为隐藏域,名称、性别、年龄、身份证号、政治面貌、毕业院校、专业、职称、职位信息作为可修改的数据显示出来。 数据提交后由对应的servlet调用JavaBean方法修改数据库中的数据。 完成数据修改操作后,直接由该servlet转发到获取指定部门下员工列表的servlet,实现员工列表的刷新。获取员工信息的方法为:EmpInfo getEmp(String empID)修改员工信息的方法为:boolean updateEmp(EmpInfo emp)hrm.emp.EmpGetAction获取员工信息的servlet,地址映射为/empGethrm.emp.EmpUpda
15、teAction修改员工信息的servlet,地址映射为/empUpdate/emp/emp_edit.jsp修改员工信息输入页面3.2.4 删除员工一十五、 功能描述在员工列表中选中一个员工后,进行删除操作,删除完成后刷新员工列表。一十六、 功能实现 选中一个员工后才能选择“删除”才做。 完成数据删除操作后,直接由该servlet转发到获取员工列表的servlet,实现员工列表的刷新。删除员工信息的方法为:boolean delEmp(String empID)hrm.emp.EmpDelAction修改员工信息的servlet,地址映射为/empDel3.3 培训信息管理培训信息管理模块主
16、要实现培训课程信息的添加、修改、删除功能。3.3.1 培训列表一十七、 功能描述进入培训信息管理界面后,首先显示的是现有的培训课程列表,并通过按照开始时间将最新的培训课程排在最前面。一十八、 功能实现 调用获取对应的servlet来获取培训信息列表。 将取到的数据共享后,转发到培训信息列表显示页面。hrm.edu.EduService用来实现培训信息管理业务的JavaBean。获取培训列表的方法为:ArrayList eduList( )hrm.edu.EduListAction获取培训列表的servlet,地址映射为/eduList/edu/edu_list.jsp显示培训信息列表的页面3.
17、3.2 添加培训一十九、 功能描述通过培训信息添加页面录入新的培训信息:包括名称、开始日期、结束日期、内容。 名称、开始日期、结束日期、内容都是必填数据 名称+开始日期,要求具有唯一性。二十、 功能实现 选择“添加”操作来添加新的培训信息。 在培训信息输入页面里面录入培训的基本信息,数据在录入过程或者提交前要根据上面的数据规则来进行验证。 完成数据插入操作后,直接由该servlet转发到获取培训列表的servlet,实现培训列表的刷新。hrm.edu.EudService插入培训信息的方法为:boolean insertEdu(EudInfo emp)hrm.edu.EudInfo封装培训信息
18、的JavaBeanhrm.edu.EudInsertAction添加培训信息的servlet,地址映射为/eduInserthrm.edu.EudFormStruts自动封装客户端提交的培训信息的FormBean/edu/edu_add.jsp添加新培训信息的输入页面3.3.3 修改培训二十一、 功能描述通过培训信息修改页面录入培训更新后的信息: 不能修改已经开展的培训。二十二、 功能实现 选中一个培训信息后,选择“修改”操作。 根据培训时间判断,培训是否已经开始,如果已经开始则不能继续修改操作;反之继续。 根据选中培训的ID,通过servlet调用JavaBean方法取得要修改的培训信息,再
19、其转发到培训信息修改页面。 将培训信息显示在修改页面上,其中培训ID、作为隐藏域,名称、开始日期、结束日期、内容信息作为可修改的数据显示出来。 完成数据修改操作后,直接由该servlet转发到获取指定培训信息的servlet,实现培训列表的刷新。获取培训信息的方法为:EudInfo getEdu(String eduID)修改培训信息的方法为:boolean updateEdu(EudInfo edu)hrm.edu.EudGetAction获取培训信息的servlet,地址映射为/eduGethrm.edu.EudUpdateAction修改培训信息的servlet,地址映射为/eduUpdate/edu/edu_edit.jsp修改培训信息输入页面3.3.4 删除培训二十三、 功能描述在培训列表中选中一个培训后,进行删除操作,删除完成后刷新培训列表。二十四、 功能实现 选中一个培训后才能选择“删除”才做。 完成数据删除操作后,直接由该servlet转发到获取培训列表的servlet,实现培训列表的刷新。删除培训信息的方法为:boolean delEdu(String eduID)hrm.edu.EudDelAction修改培训信息的servlet,地址映射为/eduDel
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1