基于javaweb的医院人事管理系统(java+ssm+jsp+bootstrap+jquery+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+SSM的医院人事管理系统(java+SSM+JSP+bootstrap+jQuery+mysql)
项目介绍:
本项目旨在为医疗机构实现便捷化人事管理。 人事管理系统,实现的模块有:个人信息管理模块、员工管理模块、考勤管理模块、请假管理模块、部门管理模块。 数据库:使用mysql,Druid数据库连接池,监控数据库访问性能,统计SQL的执行性能。 持久层:mybatis持久化,使用MyBatis-Plus优化,减少sql开发量。 使用spring作为控制层,spring mvc为前端控制器,界面使用bootstrap。
环境需要:
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.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 6.数据库:MySql 5.7版本;
技术栈:
- 后端:Spring SpringMVC MyBatis 2. 前端:JSP+bootstrap+jQuery
使用说明:
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 将项目中jdbc.properties配置文件中的数据库配置改为自己的配置 3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行; 4. 运行项目,输入localhost:8080/xxx 登录
用户管理控制层:
@Controller
public class UserController {
@Autowired
@Qualifier(“RainService”)
private RainService rainservice;
// 如果在目录下输入为空,则跳转到指定链接
@RequestMapping(value=“/user/”)
public ModelAndView index2(ModelAndView mv){
mv.setViewName(“/user/list”);
return mv;
// 退出功能
@RequestMapping(value=“/user/logout”)
public ModelAndView logout(ModelAndView mv, HttpSession session){
session.setAttribute(Constants.USER_SESSION, null);
session.setAttribute(“tip”, null);
mv.setViewName(“redirect:/index”);
return mv;
@RequestMapping(value=“/login”)
public ModelAndView login(@RequestParam(“loginname”) String loginname,
@RequestParam(“password”) String password,@RequestParam(“tip”) String tip,
HttpSession session,
ModelAndView mv){
// 调用业务逻辑组件判断用户是否可以登录
boolean flag = false;
if(“1”.equals(tip)) {
User user = rainservice.login(loginname, password);
if(user!=null){
// 将用户保存到HttpSession当中
System.out.println(“HttpSession”);
session.setAttribute(Constants.USER_SESSION, user);
session.setAttribute(“tip”, “1”);
// 客户端跳转到main页面
mv.setViewName(“redirect:/index”);
}else{
// 设置登录失败提示信息
System.out.println(“设置登录失败提示信息”);
mv.addObject(“message”, “登录名或密码错误!请重新输入”);
// 服务器内部跳转到登录页面
mv.setViewName(“forward:/loginForm”);
}else {
Employee user = rainservice.login2(loginname, password);
if(user!=null){
// 将用户保存到HttpSession当中
System.out.println(“HttpSession”);
session.setAttribute(Constants.USER_SESSION, user);
session.setAttribute(“tip”, “2”);
// 客户端跳转到main页面
mv.setViewName(“redirect:/indexcustomer/”);
}else{
// 设置登录失败提示信息
System.out.println(“设置登录失败提示信息”);
mv.addObject(“message”, “登录名或密码错误!请重新输入”);
// 服务器内部跳转到登录页面
mv.setViewName(“forward:/loginForm”);
return mv;
// 如果在目录下输入任何不存在的参数,则跳转到list
@RequestMapping(value=“/user/{formName}”)
public String index2(@PathVariable String formName){
String blank = “/user/list”;
return blank;
@RequestMapping(value=“/user/list”,method=RequestMethod.GET)
public String index(Model model,String content){
List job_list = rainservice.get_UserList();
if (content!=null){
job_list = rainservice.get_UserLikeList(content);
model.addAttribute(“list”,job_list);
return “user/list”;
@RequestMapping(value=“/user/add”,method=RequestMethod.GET)
public String add(Model model,Integer id){
if(id!=null){
User job = rainservice.get_UserInfo(id);
model.addAttribute(“job”,job);
return “/user/add”;
@RequestMapping(value=“/user/add”,method=RequestMethod.POST)
public ModelAndView add(ModelAndView mv,@ModelAttribute User notice ,Integer id){
System.out.println(id);
if(id!=null){
rainservice.update_UserInfo(notice);
}else{
rainservice.insert_UserInfo(notice);
mv.setViewName(“redirect:/user/list”);
return mv;
@RequestMapping(value=“/user/delete”,method=RequestMethod.GET)
public void delete(Integer id){
System.out.println(id);
if(id!=null){
rainservice.delete_UserInfo(id);
// 管理员自己修改密码时跳转的页面
@RequestMapping(value=“/user/myupdate”,method=RequestMethod.GET)
public String update(Model model,HttpSession session){
User user = (User) session.getAttribute(Constants.USER_SESSION);
model.addAttribute(“job”,user);
return “/user/myupdate”;
@RequestMapping(value=“/user/myupdate”,method=RequestMethod.POST)
public ModelAndView update(ModelAndView mv,Model model,HttpSession session,User notice){
User user = (User) session.getAttribute(Constants.USER_SESSION);
// 如果是自己修改自己的密码,则更新session
user.setLoginname(notice.getLoginname());
user.setPassword(notice.getPassword());
user.setUsername(notice.getUsername());
rainservice.update_UserInfo(user);
session.setAttribute(Constants.USER_SESSION, user);
mv.setViewName(“redirect:/user/myupdate”);
return mv;
员工管理控制层:
@Controller
public class EmployeeController {
@Autowired
@Qualifier(“RainService”)
private RainService rainservice;
// 如果在目录下输入为空,则跳转到指定链接
@RequestMapping(value=“/employee/”)
public ModelAndView index2(ModelAndView mv){
mv.setViewName(“employee/list”);
return mv;
// 如果在目录下输入任何不存在的参数,则跳转到list
@RequestMapping(value=“/employee/{formName}”)
public String index2(@PathVariable String formName){
String blank = “/employee/list”;
return blank;
@RequestMapping(value=“/employee/list”,method=RequestMethod.GET)
public String index(Model model,String content){
List job_list = rainservice.get_EmployeeList();
if (content!=null){
job_list = rainservice.get_EmployeeLikeList(content);
model.addAttribute(“list”,job_list);
return “employee/list”;
@RequestMapping(value=“/employee/add”,method=RequestMethod.GET)
public String add(Model model,Integer id){
if(id!=null){
Employee employee = rainservice.get_EmployeeInfo(id);
model.addAttribute(“job”,employee);
List dept_list = rainservice.findAllDept();
List job_list = rainservice.findAllJob();
model.addAttribute(“job_list”, job_list);
model.addAttribute(“dept_list”,dept_list);
return “/employee/add”;
@RequestMapping(value=“/employee/add”,method=RequestMethod.POST)
public ModelAndView add(ModelAndView mv,@ModelAttribute Employee job ,Integer id){
// System.out.println(id);
if(id!=null){
rainservice.update_EmployeeInfo(job);
}else{
rainservice.insert_EmployeeInfo(job);
mv.setViewName(“redirect:/employee/list”);
return mv;
@RequestMapping(value=“/employee/delete”,method=RequestMethod.GET)
public void delete(Integer id){
// System.out.println(id);
if(id!=null){
rainservice.delete_EmployeeInfo(id);
部门管理控制层:
@Controller
public class DeptController {
@Autowired
@Qualifier(“RainService”)
private RainService rainservice;
// 如果在目录下输入为空,则跳转到指定链接
@RequestMapping(value=“/dept/”)
public ModelAndView index2(ModelAndView mv){
mv.setViewName(“dept/list”);
return mv;
// 如果在目录下输入任何不存在的参数,则跳转到list
@RequestMapping(value=“/dept/{formName}”)
public String index2(@PathVariable String formName){
// return formName;
String blank = “/dept/list”;
return blank;
@RequestMapping(value=“/dept/list”,method=RequestMethod.GET)
public String index(Model model,String content){
// System.out.println(“4234”);
List dept_list = rainservice.findAllDept();
if (content!=null){
dept_list = rainservice.findAllDept(content);
model.addAttribute(“list”,dept_list);
// for(Dept attribute : dept_list) {
// System.out.println(attribute.getName());
// }
return “dept/list”;
@RequestMapping(value=“/dept/add”,method=RequestMethod.GET)
public String add(Model model,Integer id){
// System.out.println(id);
if(id!=null){
Dept dept = rainservice.get_Info(id);
model.addAttribute(“dept”,dept);
// System.out.println(dept.getName());
return “/dept/add”;
@RequestMapping(value=“/dept/add”,method=RequestMethod.POST)
public ModelAndView add(ModelAndView mv,@ModelAttribute Dept dept ,Integer id){
System.out.println(id);
// System.out.println(dept.getId());
if(id!=null){
rainservice.update_Info(dept);
System.out.println(dept.getId());
}else{
rainservice.addDept(dept);
// System.out.println(dept.getName());
mv.setViewName(“redirect:/dept/list”);
return mv;
@RequestMapping(value=“/dept/delete”,method=RequestMethod.GET)
public void delete(Integer id){
System.out.println(id);
if(id!=null){
rainservice.delete_Info(id);