部门管理系统
一、需求分析,开发一个部门(department)、雇员(employee)管理的小系统,在这个系统中,可以添加雇员,添加部门;查看所有的部门信息、查看所有的雇员信息;可以管理部门的雇员(如添加、删除部门雇员)。
二、系统实现
使用MVC模式,STRUTS框架,页面使用tilte架构
tile架构样例:
Sidebar.jsp菜单设计:
Sidebar.jsp ·.添加一名雇员 ·添加一个部门 ·管理部门员工 ·查看所有雇员信息 ·查看所有部门信息
三、数据库(company)
table employee
id 从1000开始自增
name 雇员姓名
sex 性别 boolean
age 年龄
salary 月薪
department 所在部门
marriage 婚否 boolean
address 住址
phone 联系电话
resume 简历
table department
id 从100开始自增
name 部门名称
descriotion 功能描述
leader 该部门领导
phone 该部门联系电话
address 该部门地址
starttime 成立时间
info 历来业绩
四、功能需求
1.雇员部分的功能模块
EmployeeVO.java:代表雇员信息,它和数据中的字段一一对应。
Get().Set()雇员基本信息的方法类
EmployeeForm.java:代表了表单,它拥有一个Employee的属性。
Get().Set()EmployeeVO 类
AddEmployeeAction.java:增加雇员的动作类,调用EmployeeBean执行具体的业务操作。
EmployeeBean.java:封装了业务逻辑,连接数据库进行对应的处理。
有方法:
EmployeeBean(DataSource ds)
//构造方法
void addEmployee(Employee
employee) //添加雇员
Collection getEmployees() //获得所有的雇员信息
Collection getDepartemtDemployees(String depltd) //获得指定部门的所有雇员
Void deleteEmployee(String employId,String deptId) //从指定的部门删除指定的雇员,相等于update操作
Void resetEmploy(String) //把雇员分配到另一个部门
private Collection getEmployeeHelper(String sql) //帮助方法,用于执行数据库操作
private void executeHelper(String sql) //帮助方法,用于执行更新操作
CreateEmployee.jsp::包含一个表单,用于接收用户输入。
用validator验证name、sex、age、salary、department的合法性,其余的可不验证
EmployeeCreated.jsp:显示已经增加的雇员信息。
所有Ed.jsp都代表完成添加并显示其信息页,以后不再做说明。
2.部门部分的功能模块
DepartmentVO.java:代表了部门的信息,它和数据中的字段一一对应。
Get(),set()部门的基本信息
DepartmentForm.java:代表了表单,它拥有一个DepartmentVO的属性以及对应的get(),set()方法。
AddDepartmentAction.java:增加部门的动作类,调用DepartmentBean执行具体的业务操作。
DepartmentBean.java:封装了业务逻辑,同时也提供一些业务方法给JSP页面使用。
有方法:
DepartmentBean(DataSource ds) //构造方法
Void addDepartmentBean() //添加一个部门
Collection getLeaders() //返回所有不是部门领导的雇员
Collection
getDepartments() //返回所有的部门信息
createDepartment.jsp:包括一个表单,用于接收用户输入。
用validator验证name、description、leader、phone的合法性,其余的可以不验证。
departmentCreated.jsp:显示已经增加的部门的信息。
3. 部门员工管理(departmentManage.jsp)
此页包括在部门中添加雇员,在部门中删除雇员,被删除的雇员放在ID为temp的部门中。
①点击上面添加链接,查询所有没有被分配到的员工
03
小王
添加
添加操作,使用AddEmployeeToDeptAction.java
②点击上面删除链接,查询出该部门中所有员工
03
小王
删除
删除操作使用DeleteEmployeeFromDeptAction.java
4. 查看所有的雇员页(viewAllEmployee.jsp)
遍历出来所有雇员的集合显示在这页
显示主要的name、sex、age、salary、departmen信息,后面有详细资料、更改信息
详细资料页viewOneEmployee.jsp 页
更改信息页 updateOneEmployee.jsp页
5. 查看所有的部门页(viewAllDepartment.jsp)
遍历出来所有部门的集合显示在这页
显示主要的name、description、leader、phone信息,后面有详细资料、更改信息
详细资料页viewDepartment.jsp页
更改信息页 updateOneEmployee.jsp页