• Java项目:ssm企业人事管理系统


    作者主页:夜未央5788

     简介:Java领域优质创作者、Java项目、学习资料、技术互助

    文末获取源码

    企业人事管理系统

    项目介绍

    企业人事管理系统,可以实现简单的企业内部的管理.

    主要有管理员、人事专员、员工三种角色。
    > 管理员功能:登录、分发工资、管理其他角色账号 
    > 员工功能:注册、登录、打卡、查看工资、请假 

    > 人事专员:登录、查看员工信息列表、查看(编辑)考勤情况、请假审批

    环境要求

    1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
    2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
    3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
    4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS; 
    5.数据库:MySql 5.7版本;

    6.是否Maven项目:是;

    技术栈

    1. 后端:Spring+SpringMVC+Mybatis
    2. 前端:JSP+CSS+JavaScript

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
    若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
    3. 将项目中resources/applicationContext.xml配置文件中的数据库配置改为自己的配置;
    4. 运行成功后,在浏览器中输入地址:http://localhost:8080/userLogin/index

    运行截图

     

     

     

     

     

     

     

     

    相关代码 

    用户登录

    1. package com.controller;
    2. import com.domain.UserLogin;
    3. import com.service.UserLoginService;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Controller;
    6. import org.springframework.ui.Model;
    7. import org.springframework.ui.ModelMap;
    8. import org.springframework.web.bind.annotation.RequestMapping;
    9. import org.springframework.web.bind.annotation.SessionAttributes;
    10. import org.springframework.web.context.request.RequestContextHolder;
    11. import org.springframework.web.context.request.ServletRequestAttributes;
    12. import javax.servlet.http.HttpServletRequest;
    13. import java.util.Enumeration;
    14. import java.util.List;
    15. @Controller
    16. @RequestMapping("/userLogin")
    17. @SessionAttributes(value = "ul")
    18. public class UserLoginController {
    19. @Autowired
    20. private UserLoginService userLoginService;
    21. /**
    22. * 注册页面请求
    23. * @return
    24. */
    25. @RequestMapping("/registerForm")
    26. public String registerForm() {
    27. return "register";
    28. }
    29. /**
    30. * 注册流程
    31. * @return
    32. */
    33. @RequestMapping("/register")
    34. public String register(UserLogin ul){
    35. if (userLoginService.userRegister(ul)) {
    36. return "main";
    37. } else {
    38. return "addRenShi";
    39. }
    40. }
    41. @RequestMapping("/register1")
    42. public String register1(UserLogin ul){
    43. if (userLoginService.userRegister(ul)) {
    44. return "index";
    45. } else {
    46. return "register";
    47. }
    48. }
    49. /**
    50. * 登录验证请求
    51. * @param userLogin
    52. * @return
    53. */
    54. @RequestMapping("/login")
    55. public String login(HttpServletRequest request,UserLogin userLogin,ModelMap model) {
    56. try {
    57. if (userLoginService.loginCheck(userLogin)) {
    58. model.put("ul",userLogin);
    59. request.getSession().removeAttribute("message");
    60. return "success";
    61. } else {
    62. request.getSession().setAttribute("message", "用户名或密码输入错误");
    63. return "index";
    64. }
    65. }catch (Exception e){
    66. request.getSession().setAttribute("message", "系统内部错误");
    67. e.printStackTrace();
    68. return "index";
    69. }
    70. }
    71. /**
    72. * 登录主页请求
    73. * @return
    74. */
    75. @RequestMapping("/index")
    76. public String index() {
    77. return "index";
    78. }
    79. @RequestMapping("/findAll")
    80. public String findAll(Model model) {
    81. //调用service的方法
    82. List list = userLoginService.findAll();
    83. System.out.println(list);
    84. model.addAttribute("list", list);
    85. return "list";
    86. }
    87. }

    UserSalaryController

    1. package com.controller;
    2. import com.domain.UserInfo;
    3. import com.domain.UserLeave;
    4. import com.domain.UserLogin;
    5. import com.domain.UserSalary;
    6. import com.service.UserInfoService;
    7. import com.service.UserLeaveService;
    8. import com.service.UserSalaryService;
    9. import com.sun.org.apache.xpath.internal.operations.Mod;
    10. import org.springframework.beans.factory.annotation.Autowired;
    11. import org.springframework.stereotype.Controller;
    12. import org.springframework.ui.Model;
    13. import org.springframework.web.bind.annotation.RequestMapping;
    14. import org.springframework.web.context.request.RequestContextHolder;
    15. import org.springframework.web.context.request.ServletRequestAttributes;
    16. import sun.awt.ModalityListener;
    17. import javax.servlet.http.HttpServletRequest;
    18. import java.time.Month;
    19. import java.util.Date;
    20. import java.util.List;
    21. @Controller
    22. @RequestMapping("/userSalary")
    23. public class UserSalaryController {
    24. @Autowired
    25. private UserSalaryService userSalaryService;
    26. @Autowired
    27. private UserInfoService userInfoService;
    28. /**
    29. *查看工资页面的请求
    30. * @param model
    31. * @return
    32. */
    33. @RequestMapping("/UserSalary")
    34. public String UserLeave(Model model)
    35. {
    36. //从Session中读取accountName并查询个人信息展示出accountName和realName
    37. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    38. String accountName=((UserLogin)request.getSession().getAttribute("ul")).getAccountName();
    39. if (accountName == null) {
    40. return "user_salary_error";
    41. }else{
    42. List list=userSalaryService.allUserSalary(accountName);
    43. model.addAttribute("list",list);
    44. return "userSalary";
    45. }
    46. }
    47. /**
    48. * 发放工资页面请求
    49. * @param model
    50. * @return
    51. */
    52. @RequestMapping("/addUserSalaryForm")
    53. public String addUserSalaryForm(Model model)
    54. {
    55. List list=userInfoService.SearchALLUserInfo();
    56. model.addAttribute("list",list);
    57. return "addUserSalary";
    58. }
    59. /**
    60. * 添加工资信息
    61. * @param
    62. * @param model
    63. * @return
    64. */
    65. @RequestMapping("/addUserSalary")
    66. public String addUserLeave(Model model,HttpServletRequest request) {
    67. UserLogin userLogin = ((UserLogin) request.getSession().getAttribute("ul"));
    68. String date=request.getParameter("MONTH");
    69. int year=Integer.parseInt(date.substring(0,4));
    70. int month=Integer.parseInt(date.substring(5,7));
    71. UserSalary userSalary = new UserSalary();
    72. userSalary.setAccountName(request.getParameter("accountName"));
    73. userSalary.setRealName(request.getParameter("realName"));
    74. userSalary.setSalaryDate(request.getParameter("salaryDate"));
    75. userSalary.setSalary(Integer.parseInt(request.getParameter("salary")));
    76. userSalary.setYEAR(year);
    77. userSalary.setMONTH(month);
    78. //用以查看该员工工资是否发放过了
    79. UserSalary userSalary1=userSalaryService.SearchUserSalaryByYearAndMonth(userSalary);
    80. //未完善信息或不是管理员不能进行发放工资
    81. if (userLogin == null||userLogin.getUserType()!=0) {
    82. return "add_user_salary_error";
    83. } else{
    84. //如果没有查到记录,就给予发放
    85. if(userSalary1==null)
    86. {
    87. userSalaryService.addUserSalary(userSalary);
    88. List list=userInfoService.SearchALLUserInfo();
    89. model.addAttribute("list",list);
    90. return "add_user_salary_success";
    91. }
    92. else
    93. {
    94. return "add_user_salary_error";
    95. }
    96. }
    97. }
    98. }

    UserLeaveController

    1. package com.controller;
    2. import com.domain.UserClock;
    3. import com.domain.UserInfo;
    4. import com.domain.UserLeave;
    5. import com.domain.UserLogin;
    6. import com.service.UserClockService;
    7. import com.service.UserInfoService;
    8. import com.service.UserLeaveService;
    9. import org.springframework.beans.factory.annotation.Autowired;
    10. import org.springframework.stereotype.Controller;
    11. import org.springframework.ui.Model;
    12. import org.springframework.web.bind.annotation.RequestMapping;
    13. import org.springframework.web.bind.annotation.RequestParam;
    14. import org.springframework.web.context.request.RequestContextHolder;
    15. import org.springframework.web.context.request.ServletRequestAttributes;
    16. import javax.servlet.http.HttpServletRequest;
    17. import java.sql.Timestamp;
    18. import java.text.SimpleDateFormat;
    19. import java.util.Date;
    20. import java.util.List;
    21. @Controller
    22. @RequestMapping("/userLeave")
    23. public class UserLeaveController {
    24. @Autowired
    25. private UserLeaveService userLeaveService;
    26. @Autowired
    27. private UserInfoService userInfoService;
    28. /**
    29. *请假页面的请求
    30. * @param model
    31. * @return
    32. */
    33. @RequestMapping("/UserLeave")
    34. public String UserLeave(Model model)
    35. {
    36. //从Session中读取accountName并查询个人信息展示出accountName和realName
    37. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    38. String accountName=((UserLogin)request.getSession().getAttribute("ul")).getAccountName();
    39. UserInfo userInfo=userInfoService.SearchUserInfoByAname(accountName);
    40. if (userInfo == null) {
    41. return "user_info_error";
    42. }else{
    43. UserLeave userLeave=new UserLeave();
    44. userLeave.setAccountName(userInfo.getAccountName());
    45. userLeave.setRealName(userInfo.getRealName());
    46. model.addAttribute("userLeave",userLeave);
    47. return "userLeave";
    48. }
    49. }
    50. /**
    51. * 添加请假信息
    52. * @param userLeave
    53. * @return
    54. */
    55. @RequestMapping("/addUserLeave")
    56. public String addUserLeave(UserLeave userLeave,HttpServletRequest request) {
    57. String time=request.getParameter("leaveDate");
    58. userLeave.setLeaveDate(time);
    59. if(userLeaveService.addUserLeave(userLeave))
    60. {
    61. return "userleave_success";
    62. } else{
    63. return "userLeave";
    64. }
    65. }
    66. /**
    67. * 审批页面的请求
    68. * @return
    69. */
    70. @RequestMapping("/findAll")
    71. public String findAll(Model model)
    72. {
    73. List list=userLeaveService.allUserLeave();
    74. model.addAttribute("list",list);
    75. return "leaveapproval";
    76. }
    77. /**
    78. * 请假审批
    79. * @return
    80. */
    81. @RequestMapping("/leaveapproval")
    82. public String leaveapproval(Model model,HttpServletRequest request)
    83. {
    84. int id = Integer.parseInt(request.getParameter("id"));
    85. String result = request.getParameter("result");
    86. userLeaveService.updateUserLeave(id,result);
    87. List list=userLeaveService.allUserLeave();
    88. model.addAttribute("list",list);
    89. return "leaveapproval";
    90. }
    91. @RequestMapping("/searchUserLeave")
    92. public String searchUserLeave(Model model)
    93. {
    94. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    95. String accountName=((UserLogin)request.getSession().getAttribute("ul")).getAccountName();
    96. List list=userLeaveService.searchUserLeave(accountName);
    97. model.addAttribute("list",list);
    98. return "searchUserLeave";
    99. }
    100. }

    UserInfoController

    1. package com.controller;
    2. import com.domain.UserInfo;
    3. import com.domain.UserLogin;
    4. import com.service.UserInfoService;
    5. import org.springframework.beans.factory.annotation.Autowired;
    6. import org.springframework.stereotype.Controller;
    7. import org.springframework.ui.Model;
    8. import org.springframework.web.bind.annotation.RequestMapping;
    9. import org.springframework.web.context.request.RequestContextHolder;
    10. import org.springframework.web.context.request.ServletRequestAttributes;
    11. import javax.servlet.http.HttpServletRequest;
    12. import java.util.List;
    13. @Controller
    14. @RequestMapping("/userInfo")
    15. public class UserInfoController {
    16. @Autowired
    17. private UserInfoService userInfoService;
    18. /**
    19. * 完善信息页面请求
    20. * @return
    21. */
    22. @RequestMapping("/addUserInfoForm")
    23. public String index() {
    24. return "addUserInfo";
    25. }
    26. /**
    27. * 完善用户信息
    28. * @param userInfo
    29. * @return
    30. */
    31. @RequestMapping("/addUserInfo")
    32. public String findAll(UserInfo userInfo) {
    33. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    34. userInfo.setAccountName(((UserLogin)request.getSession().getAttribute("ul")).getAccountName());
    35. if(userInfoService.addUserInfo(userInfo))
    36. {
    37. return "main";
    38. } else{
    39. return "addUserInfo";
    40. }
    41. }
    42. /**
    43. *通过用户名查询个人信息
    44. * @param model
    45. * @return
    46. */
    47. @RequestMapping("/searchUserInfo")
    48. public String SearchUserInfo(Model model) {
    49. //获取session中的用户名
    50. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    51. String accountName=((UserLogin)request.getSession().getAttribute("ul")).getAccountName();
    52. //根据用户名获取用户信息
    53. UserInfo userInfo=userInfoService.SearchUserInfoByAname(accountName);
    54. model.addAttribute("ui",userInfo);
    55. return "updateUserInfo";
    56. }
    57. /**
    58. *修改个人信息
    59. * @return
    60. */
    61. @RequestMapping("/updateUserInfo")
    62. public String updateUserInfo(Model model,UserInfo userInfo) {
    63. HttpServletRequest request=((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
    64. String accountName=((UserLogin)request.getSession().getAttribute("ul")).getAccountName();
    65. UserInfo ul=userInfoService.SearchUserInfoByAname(accountName);
    66. model.addAttribute("ui",ul);
    67. if(userInfoService.updateUserInfo(userInfo))
    68. {
    69. return "main";
    70. }
    71. else
    72. {
    73. return "updateUserInfo";
    74. }
    75. }
    76. @RequestMapping("/allUserInfo")
    77. public String allUserInfo(Model model)
    78. {
    79. List list=userInfoService.SearchALLUserInfo();
    80. model.addAttribute("list",list);
    81. return "allUserInfo";
    82. }
    83. }

    如果也想学习本系统,下面领取。关注并回复:032ssm 

  • 相关阅读:
    TCP/IP协议—HTTP
    超详细!一步到位!MySQL安装和基本使用
    mybatis 10: 动态sql --- part2
    golang设计模式——单例模式
    【软件测试进阶第1步】自动化测试基础知识
    ES6:ES6 的新增语法
    OpenCV从入门到入坟
    【Linux】Linux操作系统
    Spring原理篇
    cpu的指令重排,禁用办法
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/126788881