Human Resource Management System Based on JSP and MySQL

Contents
1. Introduction 1
1.1 Design Background 1
1.2 Design Significance 1
2. Requirements Analysis 3
2.1 Requirements Description 3
2.2 Use Case Modeling 3
2.3 Module Description 3
2.3.1 Employee Management Module Description 3
2.3.2 Recruitment Management Module Description 4
3. System Design 5
3.1 Database Design 5
3.1.1 Conceptual Model 5
3.1.2 Logical Model 5
3.1.3 Physical Model 5
3.1.4 Database Script 7
3.2 System Architecture Design 12
4. Product Realization 14
4.1 User Login Module Realization 14
4.1.1 Interface Design 14
4.1 .2 Function Realization 15
4.2 Salary Management Module Realization 18
4.2.1 Interface Design 18
4.2.2 Function Realization 19
5. Product Test 22
5.1 Test Method 22
5.2 User Login Module Test 22
5.3 Salary Management Module Test 22
6. Conclusion 24
6.1 Graduation Design Achievement Characteristics 24
6.2 Self-Summary 24
References 25
Acknowledgments 26
1.3 Design Ideas
1) Market research:
1. Take surveys, symposiums and other methods of research.
2. Analyze and summarize the data.
2) Demand analysis:
1. The basic functions required by the system.
2. System performance analysis.
3. Summary of technical difficulties and key testing problems.
3) Outline design:
1. Determine the operating system of the project: windows10.
2. Select the programming language: Java.
3. Design a relational database model.
4) Detailed design:

1. Divide the system modules and design the system frame diagram.
2. Analyze the functional requirements of the module and realize each class of the functional module.
3. Design the attributes and methods of the class.
4. Design and beautify the system interface.
5) Coding:
1. According to the detailed design of the HR system, code to realize the project function.
2. Solve bugs and improve the code.
6) Test
7) ​​Graduation design improvement
2. Requirements analysis
2.1 Requirements description
First of all, for an enterprise company, the use of a human resources management system is for managers to establish communication with employees. Managers can understand the specific situation and personal information of each employee through the human resource management system, and can calculate the workload and attendance rate of employees at any time. It greatly reduces the workload of managers, saves a lot of time for managers, and improves work efficiency.
Analysis process: Administrator functions
1. System login (only administrator login is provided).
2. Employee information management (the administrator performs (CURD) operations on employee information).
3. Department information management (editing department responsibilities, creation time, and number of employees).
4. Recruitment management (save the applicant's information and decide whether to hire).
5. Training information management (adding, editing, and deleting training information provided by the company).
6. Salary management (detailed operation of individual salary of employees).
7. Reward and punishment management (for group activities and competitions carried out by the company).
8. Administrator information management (change password, edit information, delete administrator, etc.).

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"
			+ request.getServerName() + ":" + request.getServerPort()
			+ path + "/";
%>

<!DOCTYPE HTML>
<html>
	<head>
		<base href="<%=basePath%>">

		<title>Project登陆界面</title>

		<meta http-equiv="pragma" content="no-cache">
		<meta http-equiv="cache-control" content="no-cache">
		<meta http-equiv="expires" content="0">
		<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
		<meta http-equiv="description" content="This is my page">

		<link rel="shortcut icon" type="image/png"
			HREF="img/favicons/favicon.png" />
		<link rel="icon" type="image/png" HREF="img/favicons/favicon.png" />
		<link rel="apple-touch-icon" HREF="img/favicons/apple.png" />
		<link rel="stylesheet" href="css/style.css" type="text/css" />

		<script type="text/javascript" SRC="js/swfobject.js"></script>
		<script type="text/javascript" SRC="js/jquery-1.4.2.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.ui.core.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.ui.widget.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.ui.tabs.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.tipTip.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.superfish.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.supersubs.min.js"></script>
		<script type="text/javascript" SRC="js/jquery.validate_pack.js"></script>
		<script type="text/javascript" SRC="js/jquery.nyroModal.pack.js"></script>
		<script type="text/javascript">

	function checkUname(){
    
    
	var username=document.getElementById("username").value;
		  var questionspan=document.getElementById("questionspan");
		   questionspan.innerHTML="<font></font>";
	if(username.length<=0){
    
    
	 $("#findpassword").css("color","red");
	}else{
    
    
	var userresult=document.getElementById("userresult");
userresult.value="";
	
	$("#emailform").toggle("slow");
	$("#findpassword").css("color","grey");
		$.post("userfindpassword",{
    
    content:username
		},function(data,textStatus){
    
    
		if(data.match(null)){
    
    
		  questionspan.innerHTML="<font color='red'>该账号不存在!</font>";
		  
		}else{
    
    
		 questionspan.innerHTML="<font></font>";
		
		var userquestion=data.split("#")[0];
		 result=data.split("#")[1];
		 realityPassword=data.split("#")[2];
		  var question=document.getElementById("question");
		  question.value=userquestion;
		  }
		});
	
	}
	
	}
	function findPassword(){
    
    
	var userresult=document.getElementById("userresult").value;
	var resultspan=document.getElementById("resultspan");
	var passwordspan=document.getElementById("passwordspan");
	resultspan.innerHTML="<font></font>";
		passwordspan.innerHTML="<font></font>";
	if(userresult.match(result)){
    
    
	passwordspan.innerHTML="<font color='green'>密码是"+realityPassword+".</font>";
	}else if(!userresult.match(result)){
    
    
	resultspan.innerHTML="<font color='red'>答案错误</font>";
	}
	 
	}
	</script>
		<style>
	.errorMessage{
    
    

list-style: none;
display: block;
}
.errorMessage li{
    
    

list-style: none;
color: red;
}
	
	</style>
	</head>

	<body>
		<!-- Header -->
		<header id="top">
		<div class="wrapper-login">
			<!-- Title/Logo - can use text instead of image -->
			<div id="title">
				<img SRC="img/logo.png" alt="Administry" />
				<!--<span>Administry</span> demo-->
			</div>
			<!-- Main navigation -->
			<nav id="menu">
			<ul class="sf-menu">

				<li class="current">
					<a href="login.jsp">用户登录</a>
				</li>
				<li>
					<a href="userfindDuty">用户注册</a>
				</li>
			</ul>
			</nav>
			<!-- End of Main navigation -->
			<!-- Aside links -->
			<aside>
			<b>English</b> &middot;
			<a href="#">Spanish</a> &middot;
			<a href="#">German</a>
			</aside>

			<!-- End of Aside links -->
		</div>
		</header>
		<!-- End of Header -->
		<!-- Page title -->
		<div id="pagetitle">
			<div class="wrapper-login"></div>
		</div>
		<!-- End of Page title -->


		<!-- Page content -->
		<div id="page">
			<!-- Wrapper -->
			<div class="wrapper-login">
				<!-- Login form -->
				<section class="full">

				<h3>
					太原科技大学校园社团管理系统
				</h3>

				<div class="box box-info">
					亲,输入账号密码就可登录咯。
				</div>

				<form id="loginform" method="post" action="userlogin">

					<p>
						<label class="required" for="username">
							账号:
						</label>
						<br />
						<input type="text" id="username" class="full" 
							name="user.user_account" />
					</p>

					<p>
						<label class="required" for="password">
							密 码:
						</label><span id="passwordspan"></span>
						<br />

						<input type="password" id="password" class="full" 
							name="user.user_password" />
					</p>
					<p>
						<s:fielderror value="error"></s:fielderror>
					</p>

					<p>
						<input type="checkbox" id="remember" class="" value="1"
							name="content" />
						<label class="choice" for="remember">
							自动登录
						</label>
					</p>

					<p>
						<input type="submit" class="btn btn-green big" value="登录" />
						&nbsp;
						<a href="javascript: //;"
							onClick="checkUname(); ">忘记密码?</a> <span id="findpassword">(找密码前请填写账号)</span>

					</p>
					<div class="clear">
						&nbsp;
					</div>

				</form>

				<form id="emailform" style="display:none" method="post" action="#">
					<div class="box">
						<p id="questioninput">
							<label for="question">
								密保问题:
							</label><SPAN id="questionspan"></SPAN>
							<br />
							<input type="text" id="question" class="full" value=""
								name="question" readonly="readonly" />

						</p>
						<p id="resultinput">
							<label for="result">
								密保答案:
							</label><SPAN id="resultspan"></SPAN>
							<br />
							<input type="text" id="userresult" class="full" value=""
								name="result" />

						</p>
						<p>
							<input type="button" class="btn" value="找回密码" onclick="findPassword();" />
						</p>
					</div>
				</form>

				</section>
				<!-- End of login form -->

			</div>

			<!-- End of Wrapper -->
		</div>
		<!-- End of Page content -->

		<!-- Page footer -->
		<footer id="bottom">
		<div class="wrapper-login">
			<p>
				Copyright &copy; 2012
				<b><a HREF="*" title="www.dotink.cn">www.dotink.cn</a>
				</b> | Icons by
				<a HREF="http://www.865171.cn">dotink</a>
			</p>

		</div>
		</footer>
		<!-- End of Page footer -->

		<!-- User interface javascript load -->
		<script type="text/javascript" SRC="js/administry.js"></script>
	</body>
</html>

insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here
insert image description here

Guess you like

Origin blog.csdn.net/newlw/article/details/130665494