当前位置: 首页 > news >正文

基于JavaEE的ssm公司员工信息管理系统的设计与实现

基于JavaEE的ssm公司员工信息管理系统的设计与实现043


 开发工具:idea 
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:ssm

摘  要

现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本龙腾公司员工信息管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此龙腾公司员工信息管理系统利用当下成熟完善的SSM框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了员工基础数据的管理,招聘统计与面试,部门和职位的添加修改,工资条和培训。龙腾公司员工信息管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。

关键词:公司员工信息管理系统;SSM框架;Mysql;自动化

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.GequxinxiEntity;
import com.entity.view.GequxinxiView;import com.service.GequxinxiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 歌曲信息* 后端接口* @author * @email * @date 2021-03-11 18:11:06*/
@RestController
@RequestMapping("/gequxinxi")
public class GequxinxiController {@Autowiredprivate GequxinxiService gequxinxiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,GequxinxiEntity gequxinxi, HttpServletRequest request){EntityWrapper<GequxinxiEntity> ew = new EntityWrapper<GequxinxiEntity>();PageUtils page = gequxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gequxinxi), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,GequxinxiEntity gequxinxi, HttpServletRequest request){EntityWrapper<GequxinxiEntity> ew = new EntityWrapper<GequxinxiEntity>();PageUtils page = gequxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gequxinxi), params), params));request.setAttribute("data", page);return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( GequxinxiEntity gequxinxi){EntityWrapper<GequxinxiEntity> ew = new EntityWrapper<GequxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( gequxinxi, "gequxinxi")); return R.ok().put("data", gequxinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(GequxinxiEntity gequxinxi){EntityWrapper< GequxinxiEntity> ew = new EntityWrapper< GequxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( gequxinxi, "gequxinxi")); GequxinxiView gequxinxiView =  gequxinxiService.selectView(ew);return R.ok("查询歌曲信息成功").put("data", gequxinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){GequxinxiEntity gequxinxi = gequxinxiService.selectById(id);gequxinxi.setClicknum(gequxinxi.getClicknum()+1);gequxinxi.setClicktime(new Date());gequxinxiService.updateById(gequxinxi);return R.ok().put("data", gequxinxi);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){GequxinxiEntity gequxinxi = gequxinxiService.selectById(id);gequxinxi.setClicknum(gequxinxi.getClicknum()+1);gequxinxi.setClicktime(new Date());gequxinxiService.updateById(gequxinxi);return R.ok().put("data", gequxinxi);}/*** 赞或踩*/@RequestMapping("/thumbsup/{id}")public R vote(@PathVariable("id") String id,String type){GequxinxiEntity gequxinxi = gequxinxiService.selectById(id);if(type.equals("1")) {gequxinxi.setThumbsupnum(gequxinxi.getThumbsupnum()+1);} else {gequxinxi.setCrazilynum(gequxinxi.getCrazilynum()+1);}gequxinxiService.updateById(gequxinxi);return R.ok("投票成功");}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody GequxinxiEntity gequxinxi, HttpServletRequest request){gequxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(gequxinxi);gequxinxiService.insert(gequxinxi);return R.ok();}/*** 前端保存*/@IgnoreAuth@RequestMapping("/add")public R add(@RequestBody GequxinxiEntity gequxinxi, HttpServletRequest request){gequxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(gequxinxi);gequxinxiService.insert(gequxinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody GequxinxiEntity gequxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(gequxinxi);gequxinxiService.updateById(gequxinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){gequxinxiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/@RequestMapping("/remind/{columnName}/{type}")public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request, @PathVariable("type") String type,@RequestParam Map<String, Object> map) {map.put("column", columnName);map.put("type", type);if(type.equals("2")) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Calendar c = Calendar.getInstance();Date remindStartDate = null;Date remindEndDate = null;if(map.get("remindstart")!=null) {Integer remindStart = Integer.parseInt(map.get("remindstart").toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate = c.getTime();map.put("remindstart", sdf.format(remindStartDate));}if(map.get("remindend")!=null) {Integer remindEnd = Integer.parseInt(map.get("remindend").toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate = c.getTime();map.put("remindend", sdf.format(remindEndDate));}}Wrapper<GequxinxiEntity> wrapper = new EntityWrapper<GequxinxiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = gequxinxiService.selectCount(wrapper);return R.ok().put("count", count);}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,GequxinxiEntity gequxinxi, HttpServletRequest request,String pre){EntityWrapper<GequxinxiEntity> ew = new EntityWrapper<GequxinxiEntity>();Map<String, Object> newMap = new HashMap<String, Object>();Map<String, Object> param = new HashMap<String, Object>();Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, Object> entry = it.next();String key = entry.getKey();String newKey = entry.getKey();if (pre.endsWith(".")) {newMap.put(pre + newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre + "." + newKey, entry.getValue());}}params.put("sort", "clicknum");params.put("order", "desc");PageUtils page = gequxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, gequxinxi), params), params));return R.ok().put("data", page);}}

相关文章:

基于JavaEE的ssm公司员工信息管理系统的设计与实现

基于JavaEE的ssm公司员工信息管理系统的设计与实现043 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存…...

cornerstoneJS加载图片(base、矩阵)

cornerstoneJS默认加载dicom影像数据&#xff0c;将识别到的dicom数据转换成imageData数据&#xff0c;在界面上展示。故&#xff0c;cornerstoneJS也可直接加载imageData。 imageData数据的data是一个数组&#xff0c;每四个元素代表一个点&#xff0c;四个元素分别表示R、G、…...

3.Trunc截断函数用法

TRUNC函数用于对值进行截断 用法有两种&#xff1a;TRUNC&#xff08;NUMBER&#xff09;表示截断数字&#xff0c;TRUNC&#xff08;date&#xff09;表示截断日期 (1)截断数字 格式&#xff1a;TRUNC&#xff08;n1,n2&#xff09;&#xff0c;n1表示被截断的数字&#xf…...

腾讯云 CODING 荣获 TiD 质量竞争力大会 2023 软件研发优秀案例

点击链接了解详情 8 月 13-16 日&#xff0c;由中关村智联软件服务业质量创新联盟主办的第十届 TiD 2023 质量竞争力大会在北京国家会议中心召开。本次大会以“聚焦数字化转型 探索智能软件研发”为主题&#xff0c;聚焦智能化测试工程、数据要素、元宇宙、数字化转型、产融合作…...

VSCode如何为远程安装预设(固定)扩展

背景 在使用VSCode进行远程开发时&#xff08;python开发之远程开发工具选择_CodingInCV的博客-CSDN博客&#xff09;&#xff0c;特别是远程的机器经常变化时&#xff08;如机器来源于动态分配&#xff09;&#xff0c;每次连接新的远程时&#xff0c;都不得不手动安装一些开…...

一文解析HTTP与HTTPS,它们的区别和联系

一文解析HTTP与HTTPS&#xff0c;它们的区别和联系 HTTP和HTTPS之间不同点 尽管HTTP和HTTPS在安全性方面存在差异&#xff0c;但它们仍然共享许多相同的基本特征和功能。这些相同点使得HTTP成为广泛应用的标准协议&#xff0c;并且HTTPS作为更安全的替代方案被广泛采用。HTTP…...

Faster RCNN网络数据流总结

前言 在学习Faster RCNN时&#xff0c;看了许多别人写的博客。看了以后&#xff0c;对Faster RCNN整理有了一个大概的了解&#xff0c;但是对训练时网络内部的数据流还不是很清楚&#xff0c;所以在结合这个版本的faster rcnn代码情况下&#xff0c;对网络数据流进行总结。以便…...

拒绝摆烂!C语言练习打卡第五天

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;每日一练 &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、选择题 &#x1f4dd;1.第一题 &#x1f4dd;2.第二题 &#x1f4d…...

关于LambdaQueryWrapper.or()导致错误

这个是原始的代码&#xff0c;到导致一个问题&#xff0c;后面所有的内容&#xff0c;都在这个or的右边&#xff0c;也就是整个查询语句就这一个or&#xff0c;而很明显&#xff08; xxx or xxx&#xff09;and&#xff08;&#xff09;这才是我们要的&#xff0c;所以需要将这…...

Day17-Node后端身份认证-JWT

Day17-Node后端身份验证 一 密码加密 1 MD5加密 创建MD5.js//node提供了一个内置模块crypto用于密码加密 const crypto = require("crypto")module.exports.getMd5 = function(password){const md5...

onvif中imaging setting图像画质总结!

前言&#xff1a; 大家好&#xff0c;今天给大家来分享一篇关于图像质量的内容&#xff0c;这个内容是我在做onvif中的imaging setting的时候&#xff0c;关注到里面有关于: brightness(亮度)color saturation(色彩饱和度)contrast(对比度)sharpness(锐度)white balance(白平衡…...

not in效率低(MYSQL的Not IN、not EXISTS如何优化)

【版权所有&#xff0c;文章允许转载&#xff0c;但须以链接方式注明源地址&#xff0c;否则追究法律责任】【创作不易&#xff0c;点个赞就是对我最大的支持】 前言 仅作为学习笔记&#xff0c;供大家参考 总结的不错的话&#xff0c;记得点赞收藏关注哦&#xff01; 目录 …...

微信小程序拉起支付报: 调用支付JSAPI缺少参数: total_fee

1. 调用支付JSAPI缺少参数: total_fee 2. 检查返回给前端调起支付的参数是否正确 一开始是params.put("package", prepay_id); 回来改回params.put("package", "prepay_id"prepay_id);...

Thinkphp6 如何 生成二维码

最近需要用到使用到二维码&#xff0c;需要将对应的网址输出生成二维码&#xff0c;Thinkphp6实现还是比较简单的&#xff1a; 第一步&#xff1a;安装 think-qrcode composer require dh2y/think-qrcode第二步&#xff1a;在对应的控制器使用 use dh2y\qrcode\QRcode;第三步&a…...

01.机器学习引言

1.机器学习的步骤 1. 数据搜集 其中数据划分&#xff0c;是将数据集分为训练集、验证集和测试集&#xff08;通常不考虑时间&#xff09; 2. 数据清洗 3. 特征工程 提取对象&#xff1a;原始数据&#xff08;特征提取一般在特征选择之前&#xff09; 提取目的&#xff1a;…...

结构型(二) - 桥接模式

一、概念 桥接模式&#xff08;Bridge Pattern&#xff09;&#xff1a;是用于把抽象化与实现化解耦&#xff0c;使得二者可以独立变化。它通过提供抽象化和实现化之间的桥接结构&#xff0c;来实现二者的解耦。 另一种理解方式&#xff1a;一个类存在两个&#xff08;或多个…...

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测&#xff0c;WOA-CNN-GR…...

C#与西门子PLC1500的ModbusTcp服务器通信1--项目背景

最近在一个120万元的项目中&#xff0c;涉及到modbustcp通信&#xff0c;我作为软件总工负责项目的通信程序开发&#xff0c;modbus是一个在工业自动化领域中的通信协议&#xff0c;可以是modbusrtu&#xff0c;modbusascii&#xff0c;modbustcp三个形式&#xff0c;具体来说是…...

Socks5代理与IP代理:网络安全与爬虫之道

1. Socks5代理的多功能性 Socks5代理是一种支持TCP和UDP协议的代理技术&#xff0c;适用范围广泛。不同于传统HTTP代理&#xff0c;Socks5代理在传输数据时更为灵活&#xff0c;可以满足实时数据传输的需求&#xff0c;适用于在线游戏、视频流等场景。此外&#xff0c;Socks5代…...

苹果电脑怎么录屏?步骤详解,看到就是赚到

苹果电脑作为一款受欢迎的高性能设备&#xff0c;不仅在日常工作中发挥着重要作用&#xff0c;还可以用于创造内容&#xff0c;如录制屏幕内容。录屏功能能够帮助用户将屏幕上的活动记录成视频&#xff0c;方便分享、演示或存档。可是您知道苹果电脑怎么录屏吗&#xff1f;通过…...

vb毕业生管理系统设计与实现

【摘要】 本毕业生管理系统是使用VB和ACCESS数据库为开发工具开发的一个全新的管理系统(MIS)。开发出的软件可以在任何一个装有VB环境的机器上运行。本毕业生管理系统包括六个子模块:用户登陆模块、学籍管理模块、学生成绩模块、毕业设计选题模块、毕业设计成绩管理模块、系…...

WPF入门到精通:4.页面增删改查及调用接口(待完善)

在WPF中&#xff0c;页面的增删改查可以通过使用DataGrid等控件来实现。接口的调用可以使用HttpClient或RestSharp等网络库来完成。 1.页面增删改查 使用DataGrid控件来展示数据&#xff0c;并通过绑定数据源来实现数据的增删改查操作。示例代码如下&#xff1a; XAML代码&a…...

容器和云原生(三):kubernetes搭建与使用

目录 单机K8S docker containerd image依赖 kubeadm初始化 验证 crictl工具 K8S核心组件 上文安装单机docker是很简单docker&#xff0c;但是生产环境需要多个主机&#xff0c;主机上启动多个docker容器&#xff0c;相同容器会绑定形成1个服务service&#xff0c;微服务…...

spring boot集成jasypt 并 实现自定义加解密

一. 技术需求 由于项目中的配置文件 配置的地方过多&#xff0c;现将配置文件统一放到nacos上集中管理 且密码使用加密的方式放在配置文件中 项目中组件使用的版本环境如下 spring cloud 2021.0.5 spring cloud alibaba 2021.0.5.0 spring boot 2.6.13 二. 技术实现 配置文…...

Qt文件系统操作和文件的读写

一、文件操作类概述 QIODevice&#xff1a;所有输入输出设备的基础类 QFile&#xff1a;用于文件操作和文件数据读写的类QSaveFile&#xff1a;用于安全保存文件的类QTemporaryFile&#xff1a;用于创建临时文件的类QTcpSocket和QUdpSocket&#xff1a;分别实现了TCP和UDP的类…...

MME: A Comprehensive Evaluation Benchmark for Multimodal Large Language Models

本文也是LLM系列相关文章&#xff0c;针对《MME: A Comprehensive Evaluation Benchmark for Multimodal Large Language Models》的翻译。 MME:一个多模态大型语言模型的综合评估基准 摘要1 引言2 MME评估套件3 实验4 分析5 结论 摘要 多模态大语言模型&#xff08;MLLM&…...

学习开发振弦采集模块的注意事项

学习开发振弦采集模块的注意事项 &#xff08;三河凡科科技/飞讯教学&#xff09;振弦采集模块是一种用来实时采集和处理振弦信号的电子设备&#xff0c;在工业、航空、医疗等领域都有广泛应用。学习开发振弦采集模块需要注意以下几点&#xff1a; 一、硬件选择 首先需要选择…...

抵御时代风险:高级安全策略与实践

目录 网页篡改攻击 流量攻击 数据库攻击 恶意扫描攻击 域名攻击 在今天的数字时代&#xff0c;网站已经成为企业、机构和个人展示信息、交流互动的重要平台。然而&#xff0c;随着网络攻击技术的不断进步&#xff0c;网站也面临着各种安全威胁。本文将探讨五种常见的网络攻…...

(3)、SpringCache源码分析

1、入口说明 @EnableCaching是开启SpringCache的一个总开关,开启时候我们的缓存相关注解才会生效,所以我们@EnableCaching开始作为入口进行分析, 2、分析@EnableCaching注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented @Import(...

如何在 Ubuntu 中安装最新的 Python 版本

动动发财的小手&#xff0c;点个赞吧&#xff01; Python 是增长最快的主要通用编程语言。其原因有很多&#xff0c;例如其可读性和灵活性、易于学习和使用、可靠性和效率。 目前使用的 Python 有两个主要版本 – 2 和 3&#xff08;Python 的现在和未来&#xff09;&#xff1…...

做网站一年多少钱/google play官网下载

为什么我们写的代码都是 if-else&#xff1f;程序员想必都经历过这样的场景&#xff1a;刚开始自己写的代码很简洁&#xff0c;逻辑清晰&#xff0c;函数精简&#xff0c;没有一个 if-else&#xff0c;可随着代码逻辑不断完善和业务的瞬息万变:比如需要对入参进行类型和值进行判…...

做网站的用什么电脑好/万网注册域名查询

把一个类放在另一个类的内部定义&#xff0c;这个定义在其他类内部的类就被称为内部类&#xff08;嵌套类&#xff09;&#xff0c;包含内部类的类也被称为外部类&#xff08;宿主类&#xff09; package com.hb;public class Cow {private double weight;public Cow(){}public…...

怎么安装电脑wordpress/我想做app推广代理

我收集于网络的一些,不知道你能用到不. 我自己测试 还行,一些常规文件都能识别出来.FFD8FFE1JPEG(jpg) FFD8FFJPEG(jpg) 89504E47PNG(png) 89504EPNG(png) 47494638GIF(gif) 474946GIF(gif) 49492A00TIFF(tif) 424D46Windows\ Bitmap(bmp) 424DWindows\ Bitmap(bmp) 41433130CA…...

怎样推广自己做的网站/qq群推广

Tensorflow2-Lenet-5实现Cifar10分类引言模型SequentialModel基本函数1.全连接层Dense2.卷积层Conv2D3.池化层Maxpool2D搭建网络1.导入数据集2.创建模型3.model.compile4.model.fit5.model.summary代码实验结果引言 为了掌握tensorflow一些函数的基本操作&#xff0c;写写博客…...

做网站专题模板/网络推广的含义

当联通大肆利用人们对iPhone的狂热攻城掠地的时候&#xff0c;移动在做什么呢&#xff1f;韬光养晦吗&#xff0c;肯定不会&#xff1b;中国移动正在一步一步走向对手机互联网和移动互联的全面掌控。而OPhone的发展之路&#xff0c;就是这个历程中一项非常重要的里程碑。工信部…...

app开发和网站开发一样么/简单的个人主页网站制作

中台&#xff0c;一个火热到发烫的词汇。附耳细听&#xff0c;到处都在喊中台&#xff0c;似乎不知道中台就差了意思&#xff0c;张嘴闭嘴说中台才算OG老炮儿。但是&#xff0c;时至今日&#xff0c;中台仍然是一个被定义中的概念&#xff0c;大家对这个词汇都有感觉&#xff0…...