实用SSM框架开发的人员管理系统

EmployeeManagementSystem 这是完整使用SSM框架开发的第一个项目,项目来源于北京动力节点的SSM框架整合教程,其中加入了一些自己的理解

本文包含相关资料包-----> 点击直达获取<-------

EmployeeManagementSystem

这是完整使用SSM框架开发的第一个项目,项目来源于北京动力节点的SSM框架整合教程,其中加入了一些自己的理解,增加了一个搜索功能的页面,这个项目总体来说对于新手是很友好的,涉及到了简单的ajax和jquery处理,UI搭建,后端SSM环境搭建,简单的业务流程设计(使用JSON交互)

使用SSM框架搭建的一个简单的员工信息管理系统,实现了基本的增删改查整个流程

直接把war包放到tomcat的webapps目录下,重启即可运行

系统架构

业务架构

功能分解

  1. 查询和分页显示
  2. 新增员工信息功能
    • 数据校验,需要校验用户名和邮箱是否合法
    • 前端使用jquery校验,后端使用JSR303
  3. 修改员工信息功能
  4. 单个删除员工
  5. 批量删除员工
  6. 使用Rest风格的URI
  7. 搜索功能

技术点

  • 基础框架:SpringMVC+Spring+MyBatis
  • 数据库:MySQL
  • 前端框架:BootStrap快速搭建
  • 项目依赖管理:Maven
  • 分页:pagehelper(Mybatis的工具)
  • 逆向工程:MyBatis Generator

数据库表设计

数据库表设计

功能实现

1查询和分页显示

1.1数据分析

分析前端UI,分析要从数据库获取的信息 数据分析 修改Mapper映射文件 数据分析

1.2业务逻辑分析

  1. 访问index.jsp页面
  2. 发送ajax请求获取员工数据
  3. 服务器返回JSON数据
  4. 浏览器解析JSON数据,使用DOM增删页面

1.3实现

  1. 导入jackson包,把对象转换成JSON字符串,在controller中添加ResponseBody注解即可

  2. 定义一个新的实体类Msg.java

  3. 3个属性:

    • 响应码(100成功 200失败)
    • 提示信息(msg)
    • 返回给浏览器的数据(Map 封装)
  4. 3个方法:

    • 静态Success:返回Msg对象,设置响应吗100,提示信息处理成功
    • 静态Fail:返回Msg对象,设置响应吗200,提示信息处理失败
    • Add方法:用于把pageInfo放入到map中

    public Msg add(String key, Object value) { this.getExtend().put(key,value); return this; }

  5. index.jsp使用Jquery进行拼接元素,显示表格

1.4流程图

流程图

2新增员工信息功能

2.1务逻辑

  1. index.jsp页面点击新增
  2. 弹出新增员工的对话框(模态框)
  3. 数据库查询部门列表,显示在对话框中
  4. 用户输入数据
  5. 校验数据
  6. 完成保存

2.2数据分析

UI

  • 姓名和邮箱要做前端+后端校验
  • 部门根据数据库信息返回的添加进去

2.3查出部门信息

查出部门信息

2.4前端校验用户名和邮箱是否合法

前端校验用户名和邮箱是否合法

2.5后端校验用户名和邮箱是否合法

  1. 使用的是JSR303校验
  2. 当输入框输入完成移开鼠标之后,发送AJAX到服务器请求用户名是否已经存在,并且是否是合法的用户名
  3. 如果校验不通过,那么保存信息的按钮应处于不可用状态 后端校验用户名和邮箱是否合法

2.6保存新增的员工信息

调用的是Jquery的serialize()方法,把表单数据包装成对象 保存新增的员工信息

3修改员工信息功能

3.1逻辑分析

  1. 点击修改按钮,发送AJAX信息,请求当前修改员工的数据库信息
  2. 弹出模态框,回显员工信息,姓名不允许修改
  3. 校验邮箱

注意 由于修改和删除按钮都是页面加载完成后,由AJAX发送请求,再添加到页面的,所有click事件不生效,所以要使用dom对象操作

dom操作

TOMCAT直接使用PUT请求的时候不会封装请求体数据,要使用SpringMVC的过滤器完成PUT SpringMVCPUT

3.2数据分析

UI

3.3业务实现

  1. 获取部门信息增加到下拉框
  2. 获取员工信息添加到模态框
  3. 点击保存按钮更新员工信息到数据库 点击保存按钮更新员工信息到数据库

4删除功能

4.1单个删除

单个删除

4.2批量删除

  1. 添加选择按钮
  2. 实现批量删除

4.2.1添加选择按钮

添加选择按钮

4.2.2实现批量删除

实现批量删除

5搜索功能

5.1逻辑

  1. 增加一个高级搜索的按钮,跳转到高级搜索的界面query.jsp
  2. 后台需要判断输入条件

5.2数据分析

UI

5.3实现

  1. 表现层

/** * 查询功能的查询员工信息 * 查询出来的员工数据显示在一页上面 */ @RequestMapping(value="/queryEmps",method=RequestMethod.POST) @ResponseBody public Msg queryEmp(Employee employee) { System.out.println(employee); List<Employee> emplist = employeeService.queryEmp(employee); return Msg.success().add("emplist",emplist); }

  1. Service层

``` public List queryEmp(Employee employee) { // TODO Auto-generated method stub EmployeeExample example = new EmployeeExample(); Criteria criteria = example.createCriteria(); System.out.println("".equals(employee.getEmpName())); if (!("".equals(employee.getEmpName()))) { criteria.andEmpNameEqualTo(employee.getEmpName()); } if(!("".equals(employee.getEmail()))) { criteria.andEmailEqualTo(employee.getEmail()); } criteria.andGenderEqualTo(employee.getGender()); criteria.andDIdEqualTo(employee.getdId());

    return employeeMapper.selectByExampleWithDept(example);
}

```

参考文献

  • 基于SSH框架的人力资源管理系统的设计与实现(吉林大学·陆贯中)
  • 小型企业人力资源管理信息系统的设计与实现(电子科技大学·李勇)
  • 基于Spring Cloud的企业人事管理系统的设计与实现(吉林大学·王佳越)
  • 基于B/S的人事管理系统的设计与实现(电子科技大学·张运朋)
  • 中粮食品营销有限公司人力资源管理系统的设计与实现(山东大学·王丽霞)
  • 人力资源管理系统设计(山东大学·郑重)
  • 杰出人才项目管理的设计与实现(山东大学·谢潇康)
  • 基于ExtJS与J2EE的人力资源管理系统的设计与实现(内蒙古大学·李彦佑)
  • 基于Spring Cloud的企业人事管理系统的设计与实现(吉林大学·王佳越)
  • 基于ExtJS与J2EE的人力资源管理系统的设计与实现(内蒙古大学·李彦佑)
  • 基于J2EE技术架构的HRM系统设计与实现(大连理工大学·张宁)
  • 基于SSH框架的人力资源管理系统的设计与开发(电子科技大学·唐伟)
  • 小型企业人力资源管理信息系统的设计与实现(电子科技大学·李勇)
  • 人力资源管理系统设计(山东大学·郑重)
  • 基于B/S的人事管理系统的设计与实现(电子科技大学·张运朋)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕业设计客栈 ,原文地址:https://m.bishedaima.com/yuanma/35813.html

相关推荐

发表回复

登录后才能评论