人事管理系统(Javaweb)

人事管理系统
目 录
1.设计任务与要求 1
1.1设计目的 1
1.2开发环境 2
1.3设计内容 2
2. 总体设计 2
2.1系统功能设计 2
2.2数据库设计 3
3. 需求分析 4
4.详细设计 4
4.1系统的登录功能 4
4.2修改密码功能 6
4.3添加功能 7
4.4删除功能 10
4.5修改功能 11
5. 系统测试 12
5.1测试目的 12
5.2测试设计 13
5.3测试结果 14
5.3.1用户登录模块 14
5.3.2增删改查模块 15
5.3.3上传文件模块 16
6. 小结 17
7. 参考文献 18

1.设计任务与要求
1.1设计目的
随着信息化、自动化时代的到来,电脑在我们生活中扮演重要的角色,特别是对公司而言,如果公司采用电脑来管理员工,公司的运行效率将会得到很大的提高。一个公司多达上万人,如果没有一个好的管理制度,管理起来将会很麻烦。而如果采用人事管理系统,管理会简单很多,一个好的人事管理系统可以给人们的生活带来极大的便利和高效,可以很好的提高人们工作效率,为企业创造更多的价值。本次毕业设计的目的,是做一个网络版人事管理系统,以对企业人员的基本信息进行增删改查,对企业中不同职位的人进行权限的配置,旨在更好和个性化的管理企业中的各个员工。
目前,我国企业对于人事管理系统的应用基本.上还处于初级阶段,主要表现在应用范围比较窄、水平比较差和效果不理想等方面。虽然目前存在这些问题,但很多企业还是根据自身的条件和需求,开始实施应用人事管理系统,以加强和深化人事管理工作。所以说,采用人事管理系统能够为用户提供充足的信息和快捷的查询手段,而实施一套既有国际化管理理念,又能够满足中国特殊的人事管理环境的管理信息系统,则是实现高效的人事管理的一种重要途径,能够使人事管理都能专注于人力资源的发展和规划,并大幅提升工作效率和水平。
本次课题的目的是通过人事管理系统,使公司方便对各个员工进行个性化管理,提高企业各个员工的办事效率,从而增加员工工作的积极性和提高企业的运行效率。开发之前,首先经过调研,得到系统功能需求,根据需求分析确定开发的内容,其次对系统功能进行模块化设计,得到初步的系统总体结构,然后编写代码具体实现,最后对各个模块进行测试优化。本次开发的功能是人事管理系统中的一部分,主要有权限控制、查询员工信息、增加员工信息、部门管理、部门查询、添加部门信息等功能。通过本次系统的设计与开发,旨在对公司的人力资源进行个性化管理,从而提高公司的运作效率。本文详细介绍了人事管理系统的功能需求,系统设计和具体实现。简要介绍了系统开发采用的过程方法。

1.2开发环境
Windows操作系统
前台:jsp css js
后台:idea2018 Jdk1.8 Tomcat7.0 MVC结构
数据库:mysql
1.3设计内容
人事管理系统是一个人事系统,主要是帮助员工和管理层更好进行交流,根据人事管理系统的基本需求,本系统需要完成以下任务:
1、用户管理功能:登录之后可以对用户查询和添加。
2、员工管理功能:登录之后可以对员工进行查询和添加功能。
3、职位管理功能:登录之后可以对员工的职位进行调整。
4、部门管理功能:职位登录本系统可以上传人事资料、视频以及下载,另外可以对这些资料进行增删改查。
5、招聘信息:发布各个部门的招聘信息
6、发布公告
使用三层框架,每个功能要尽可能的贴近实际,合理全面。对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能,可以加以其他功能或修饰,使程序更加完善、合理。
2.总体设计
2.1系统功能设计
开发一套能满足易团队人事信息管理的软件系统,实现人事管理的自动化,在减少由于失误而造成损失的同时,也可以使企业减少许多费用支出,提高办事效率。
人事管理系统的总体结构分为六大块,它们分别是:用户管理,部门管理,职位管理,员工管理,公告管理以及文件下载。系统的功能设计结构图如图2-1。

                    图2-1总体结构

2.2数据库设计
本系统的数据库采用mysql数据库,设计的表如下:
管理员信息表:管理员的账户名称,密码等个人信息都储存在这里,方便查看和登录时密码验证。
表2-2管理员信息表
名称 数据类型 长度
id int 11
name varchar 20
pwd char 15
用户信息表:主要包含用户的基本信息,如表2-3所示。
表2-3用户信息表
名称 数据类型 长度
id int 11
name varchar 20
部门信息表:部门的编号、名称,如表2-4所示。
表2-4部门信息表
名称 数据类型 长度
id int 11
name varchar 15
parentId int 11
职位信息表:职位的编号,名称、所属部门,如表2-5所示。
表2-5职位信息表
名称 数据类型 长度
id int 11
name varchar 15
parentId int 11
3. 需求分析
本次设计的人事管理系统主要设计了登录模块、用户管理、部门管理、职位管理、员工管理、公告管理、下载中心等常用人事系统功能。登录时只有输入正确用户名和正确的密码才可以访问其他模块。若用户名或密码输入错误,提示用户名和密码错误。若在没有登录直接访问其他功能地址,则返回登录页面,提示请先登录再访问网站。
用户管理模块用于管理系统用户信息包括登录名、密码、用户名、身份证号等。提供新增、更新、删除、查询。部门管理模块用于管理企业部门信息包括部门名称、详细信息等。提供新增、更新、删除、查询。职位管理模块用于管理企业职位信息包括职位名称、详细信息。提供新增、更新、删除、查询。员工信息模块用于企业员工信息包括姓名、地址、手机号码、等信息。提供新增、更新、删除、查询。
4.详细设计
4.1系统的登录功能
功能名: Login
用户在“登录”页面中输入:用户名、密码和验证码, 然后提交系统对用户进行合法性检查,如果合法,进入到系统主页面。否则,返回到“登录”页面,并提示错误原因。如图4-1-1是登录界面:

在这里插入图片描述

图4-1-1登录界面
验证码输入错误时显示提示框,如图4-1-2所示。

图4-1-2验证码提示
登录核心代码:
@WebServlet(“/user.let”)
public class UserServlet extends HttpServlet {
UserBiz userBiz = new UserBiz();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
HttpSession session = req.getSession();
req.setCharacterEncoding(“utf-8”);
resp.setContentType(“text/html;charset=utf-8”);
PrintWriter out = resp.getWriter();
String method = req.getParameter(“type”);
switch (method){
case “login”:
String name = req.getParameter(“name”);
String pwd = req.getParameter(“pwd”);
String userCode = req.getParameter(“valcode”);
String code =session.getAttribute(“code”).toString();
if(!code.equalsIgnoreCase(userCode)){
out.println(“”);
return;
}
4.2修改密码功能
功能名: modify
用户在“修改密码”页面中输入:原密码、新密码、确认密码,然后提交系统检查新密码与确认密码是否一致,如果一致,更新用户密码。返回到主页面。否则返回到“修改密码”页面,并提示错误原因。如图4-2-1是修改密码界面:
在这里插入图片描述

图4-2-1修改密码界面
核心代码:
session.invalidate();
out.println(“”);
}
break;
}
4.3添加功能
该系统的添加功能包括添加部门、添加用户和添加员工等模块。添加用户模块,首先由管理员登录系统,管理员在首页用户管理中点击“添加用户”,系统会执行添加功能,在用户管理中显示新添加的用户;添加员工模块,管理员在首页员工管理中点击“添加员工”,系统执行添加功能,在员工列表界面显示添加的员工;添加部门模块,管理员在首页部门管理中点击“添加部门”,系统执行添加功能,在部门列表界面显示添加的部门。
添加用户页面如图4-3-1所示。
在这里插入图片描述

图4-3-1添加用户页面

图4-3-2添加成功页面
添加员工页面如图4-3-3所示。

图4-3-3添加员工页面
添加部门页面如图4-3-4所示。

在这里插入图片描述

在这里插入图片描述

4-3-4添加部门界面

添加功能的核心代码:
case “add”:
String name = req.getParameter(“name”);
String pwd = req.getParameter(“pwd”);
long memberTypeId = Long.parseLong(req.getParameter(“memberType”));
double balance = Double.parseDouble(req.getParameter(“balance”));
String tel = req.getParameter(“tel”);
String idNumber = req.getParameter(“idNumber”);
int count = memberBiz.add(name,pwd,memberTypeId,balance,tel,idNumber);
if(count>0){
out.println(“”);
}
break;

4.4删除功能
在用户管理、员工列表、部门列表和职位列表中执行删除操作,在点击“删除”二字时,系统会执行删除命令,弹出命令框“确认删除”。
删除页面如图4-4-1所示。
在这里插入图片描述

图4-4-1删除页面
删除功能核心代码:
case “remove”:
long removeId = Long.parseLong(req.getParameter(“id”));
try {
int count = bookBiz.remove(removeId);
if(count>0){
out.println(“”);
}
break;
4.5修改功能
在用户管理、员工列表、部门列表和职位列表中执行修改操作,在点击“修改”二字时,系统会执行修改命令,弹出命令框“确认修改”,点击确认后回到修改用户界面,如图4-5-1和4-5-2所示。

图4-5-1确认修改页面

图4-5-2修改页面
修改核心代码:
case “modify”:
long memberId = Long.parseLong( req.getParameter(“id”));
String name2 = req.getParameter(“name”);
String pwd2 = req.getParameter(“pwd”);
Long memberTypeId2 = Long.parseLong(req.getParameter(“memberType”));
double balance2 = Double.parseDouble(req.getParameter(“balance”));
String tel2 = req.getParameter(“tel”);
String idNumber2 = req.getParameter(“idNumber”);
int count3 = memberBiz.modify(memberId,name2,pwd2,memberTypeId2,balance2,tel2,idNumber2);
if(count3>0){
out.println(“”);
}
break;
5.系统测试
5.1测试目的
软件测试是对软件需求分析、设计、编码实现的审查,它是软件正常运行保证的关键步骤。通常是这样定义测试的:软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发。测试一般来说应该尽快执行,因为软件的质量是在开发过程中形成的,可能存在各种各样的缺陷。测试的目的就是设计测试案例,通过这些测试案例来发现软件的缺陷和排除缺陷。
测试的目的是在最小的成本和最少的时间内,通过设计合适的测试用例,系统地发现不同类别的错误。
5.2测试设计
测试的难点是设计测试用例,本系统测试的难点是系统测试。系统测试是将软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等元素组合在一起,对计算机系统进行一系列的组装测试和确认测试。
系统测试
测试项目名称:基于JavaWeb人事管理系统的设计与实现—客户端
测试用例编号: 01 测试人员: 测试时间: 2022.5.19
测试项目标题:所有基本页面能正确显示连接
测试内容:
验证系统客户端首页是否能够正常显示
验证系统客户端登录后其内容是否显示正常
验证系统客户端内各模块内容信息是否正确
测试环境与系统配置:
软件环境: Microsoft Windows 10+ Internet Explorer7.0浏览器
硬件环境: Intel® Core™ i3-2350M CPU @ 2.30 GHz +2.0GB网络环境:移动热点
测试次数:用IE浏览器进行多次测试,知道界面完全正常显示
预期结果:
可以正确显示系统客户端首页.
可以正确显示系统客户端登录后其内容
可以正确显示系统客户端内各模块内容信息
测试过程:
登录http://localhost:8080/Login.jsp对于每个模块点击进行查看其内容信息是否正确查看每个页面的连接是否有误
测试结果:
可以正确显示系统客户端首页
可以正确显示系统客户端登录后其内容
可以正确显示系统客户端内各模块内容信息
5.3测试结果
5.3.1用户登录模块

图5-3-1-1登录页面
在这里插入图片描述

图5-3-1-2首页

5.3.2增删改查模块

图5-3-2-1添加用户页面
在这里插入图片描述

图5-3-2-2用户修改删除操作页面

图5-3-2-3添加员工页面
在这里插入图片描述

图5-3-2-4员工修改删除操作页面

图5-3-2-5部门修改删除页面
5.3.3上传文件模块
在添加员工界面可以选择文件上传员工照片,如图所示。
在这里插入图片描述

图5-3-3-1上传文件页面
6.小结
近几年来,由于人事制度的不断改革,各级人事部门对人事信息管理计算机化的需求也与日俱增,所以企业人事管理成为了企业管理中的重中之重。本系统的软件开发环境主要选择了当前较为流行的来进行前台的管理设计,而后台则选用了功能齐全的数据库。在设计过程中通过JSP和JavaBean和Servlet技术的相结合,完成了软件的最终编码过程。最后,经测试本系统具有相对较高的稳定性和实用性。
人事管理系统是所有管理系统的基础,是通过编程语言对数据库的进行基本操作(增删改查),来达到自己需要的功能。本次系统的研究,由于时间有限,功能存在不足,如没有文件下载模块、招聘信息以及发布公告模块,其次真正的公.司业务可能比我做的人事管理系统复杂的很多。如果想做一个能真正能在公司应用的管理系统,必须针对该公司做具体的调查,这往往需要很多资料,如员工的数据信息和公司的业务,只有详细的了解该公司的业务机构和流程,才能针对该公司做一套相对完善的人事管理系统。

7. 参考文献
[1]郭克华. Java Web程序设计(第三版).清华大学出版社
[2]贾晓芳,沈泽刚.Java Web应用开发中得常见乱码形式及解决方法[J]. 2017
[3]胡蕊蕊.Java Web程序运用中泛型DAO的作用[J]电子测试.2017
[4]苏航.接口得意义及在java web三层架构中得作用分析[J].西部皮革.2016
[5]陈涛.黄艳峰。Java Web开发中文件上传方法研究与实现[J].电脑知识与技.2016

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
人事管理系统是一种用于管理组织内部人力资源的软件系统。它可以帮助企业或组织进行员工信息管理、薪资管理、考勤管理、绩效管理等工作。对于JavaWeb开发人员来说,可以使用Java技术开发人事管理系统。 以下是一个简单的人事管理系统的示例代码: ```java // 员工类 public class Employee { private String name; private int age; private String department; // 构造方法和getter/setter方法省略 // 其他方法 public void displayInfo() { System.out.println("Name: " + name); System.out.println("Age: " + age); System.out.println("Department: " + department); } } // 人事管理系统类 public class HRManagementSystem { private List<Employee> employeeList; public HRManagementSystem() { employeeList = new ArrayList<>(); } // 添加员工 public void addEmployee(Employee employee) { employeeList.add(employee); } // 删除员工 public void removeEmployee(Employee employee) { employeeList.remove(employee); } // 根据部门查找员工 public List<Employee> findEmployeesByDepartment(String department) { List<Employee> result = new ArrayList<>(); for (Employee employee : employeeList) { if (employee.getDepartment().equals(department)) { result.add(employee); } } return result; } // 其他方法 // ... } // 使用示例 public class Main { public static void main(String[] args) { HRManagementSystem hrSystem = new HRManagementSystem(); // 添加员工 Employee employee1 = new Employee("John", 25, "HR"); Employee employee2 = new Employee("Alice", 30, "Finance"); hrSystem.addEmployee(employee1); hrSystem.addEmployee(employee2); // 查找并显示HR部门的员工信息 List<Employee> hrEmployees = hrSystem.findEmployeesByDepartment("HR"); for (Employee employee : hrEmployees) { employee.displayInfo(); } } } ``` 这是一个简单的人事管理系统JavaWeb示例,包括了员工类、人事管理系统类和一个使用示例。你可以根据实际需求进行扩展和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值