基于SSM框架实现的员工信息管理系统

1,项目简介 这是完整使用SSM框架开发的第一个项目,项目来源于北京动力节点的SSM框架整合教程,其中加入了一些自己的理解,增加了一个搜索功能的页面,这个项目总体来说对于新手是很友好的

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

1.项目简介

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

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

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

1.1系统架构

1.2功能分解

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

1.3技术点

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

1.4数据库表设计

2.功能实现

2.1查询和分页显示

2.1.1数据分析

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

2.1.2业务逻辑分析

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

2.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进行拼接元素,显示表格

2.1.4流程图

2.2新增员工信息功能

2.2.1业务逻辑

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

2.2.2数据分析

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

2.2.3查出部门信息

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

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

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

2.2.6保存新增的员工信息

调用的是Jquery的serialize()方法,把表单数据包装成对象

2.3修改员工信息功能

2.3.1逻辑分析

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

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

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

2.3.2数据分析

2.3.3业务实现

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

2.4删除功能

2.4.1单个删除

2.4.2批量删除

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

2.4.3添加选择按钮

2.4.4实现批量删除

2.5搜索功能

2.5.1逻辑

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

2.5.2数据分析

2.5.3实现

  1. 表现层

java /** * 查询功能的查询员工信息 * 查询出来的员工数据显示在一页上面 */ @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层

```java 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框架的中小企业人力资源管理系统研究(吉林大学·孙峰)
  • 某公司人力资源管理系统的设计与实现(电子科技大学·伍伯伦)
  • 四川电力建设公司人力资源业务管理平台的设计与实现(电子科技大学·高瑞)
  • 人力资源管理系统设计(山东大学·郑重)
  • 基于ExtJS与J2EE的人力资源管理系统的设计与实现(内蒙古大学·李彦佑)
  • 烟草公司人事管理系统的设计与实现(青岛大学·矫大鹏)
  • 中粮食品营销有限公司人力资源管理系统的设计与实现(山东大学·王丽霞)
  • 烟草公司人事管理系统的设计与实现(青岛大学·矫大鹏)
  • 基于SSM框架的资质管理系统开发(首都经济贸易大学·田国兵)
  • 基于SSH框架的中小企业人力资源管理系统研究(吉林大学·孙峰)
  • 面向服务(SOA)架构和.NET技术的人力资源管理系统(电子科技大学·潘潇)
  • 综合管理信息系统的设计与实现(东南大学·胡杰)
  • 综合管理信息系统的设计与实现(东南大学·胡杰)
  • 综合管理信息系统的设计与实现(东南大学·胡杰)
  • 人力资源管理系统设计(山东大学·郑重)

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

相关推荐

  • 基于SpringBoot框架的医疗挂号管理系统

    这是一套采用Java编程语言,基于SpringBoot框架构建的医疗预约管理系统源代码,项目中融入了Vue技术,开发工具为Idea或Eclipse,此系统适用于毕业设计或课程实践
    2024年05月23日
    2 1 1
  • 基于Python设计的信息检索系统

    基于Python设计的信息检索系统 【实验目的】: 开发一款针对英文文本的信息检索系统,可以实现建立索引表,布尔查询,通配符查询, 短语查询等功能
    2024年05月14日
    4 1 1
  • 基于Python的信息检索课程设计

    基于Python的信息检索课程设计 sdu视点新闻 全站爬虫爬取+索引构建+搜索引擎查询练习程序 爬虫功能使用Python的scrapy库实现
    2024年05月14日
    3 1 1
  • 学生评奖评优管理系统

    这是一个🔥🔥基于SpringBoot框架的学生评奖评优管理系统设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    1 1 1
  • 基于Python实现书店销售管理系统

    书店销售管理管理子系统 一,设 计 总 说 明 现在社会随着计算机技术迅速发展与技术的逐渐成熟,信息技术已经使人们的生活发生深刻的变化,生活中的各种服务系统也使人们在生活中的联系日常销售活动方式发生了很大的变化
    2024年05月14日
    6 1 1
  • 网上摄影工作室

    这是一个🔥🔥基于SpringBoot框架的网上摄影工作室设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    2 1 1
  • java+swing实现推箱子小游戏课程设计源码

    在计算机科学领域,游戏设计一直是一个备受关注的话题,随着计算机技术的不断发展,人们对于游戏的需求也越来越高,《java+swing实现推箱子小游戏课程设计源码》是一个旨在使用Java语言和Swing框架实现的推箱子小游戏项目
    2024年05月07日
    5 1 1
  • 基于python + dlib实现人脸识别

    python 进行人脸识别 人脸识别的主要算法 其核心算法是 欧式距离算法使用该算法计算两张脸的面部特征差异,一般在 0,6 以下都可以被认为是同一张脸 人脸识别的主要步骤 获得人脸图片 将人脸图片转为 128D 的矩阵(这个也就是人脸特征的一种数字化表现) 保存人脸 128D 的特征到文件中 获取其他人脸转为 128D 特征通过欧式距离算法与我们保存的特征对比
    2024年05月14日
    2 1 1
  • 网上商城系统

    这是一个🔥🔥基于SpringBoot框架的网上商城系统设计与实现🔥🔥的项目源码,开发语言Java,框架使用的SpringBoot+vue技术,开发环境Idea/Eclipse
    2024年05月23日
    1 1 1
  • 基于python实现的CS通信和P2P通信

    基于python实现的CS通信和P2P通信 一,实验要求 C/S通信实现要求 两台计算机分别模拟服务器,客户端 通过编程实现服务器端
    2024年05月14日
    1 1 1

发表回复

登录后才能评论