返回目录
开源项目文档办公类新手

微人事 vhr:SpringBoot+Vue 前后端分离人力资源管理系统

微人事(vhr)是一个前后端分离的人力资源管理系统,采用 SpringBoot+Vue 开发,集成 Redis、RabbitMQ 等企业级应用技术点,包含角色权限、员工管理、薪资管理、在线聊天与系统通知等功能,并提供部署文档与视频教程。

0 次阅读2026/09/15 发布
微人事 vhr:SpringBoot+Vue 前后端分离人力资源管理系统 来源图片

社区作者 · zZz

它解决什么问题

微人事(vhr)是一个前后端分离的人力资源管理系统,采用 SpringBoot+Vue 开发,项目加入常见企业级应用所涉及的技术点,例如 Redis、RabbitMQ 等。项目地址为 https://github.com/lenve/vhr。vhr 是一个脚手架,如需业务完整的项目,可移步 TienChin;本项目已使用 SpringBoot3+Vue3 重构,地址为 https://github.com/lenve/vhr2.0。

后端技术栈包括 Spring Boot、Spring Security、MyBatis、MySQL、Redis、RabbitMQ、Spring Cache、WebSocket 等;前端技术栈包括 Vue、ElementUI、axios、vue-router、Vuex、WebSocket、vue-cli4 等。

项目效果:不同用户在登录成功之后,会根据不同角色看到不同的系统菜单;每个用户的角色由系统管理员进行分配;系统管理员也可以管理不同角色可以操作的资源。

更新记录显示项目包含:部门管理、职称管理、职位管理、员工基本信息管理、员工高级搜索、员工数据 Excel 导入导出、添加用户成功后按邮箱自动发送欢迎入职邮件、工资账套管理、员工账套设置、HR 在线聊天、管理员发送系统通知等功能。

文档覆盖:权限数据库设计、服务端环境搭建、动态处理角色和资源的关系、密码加密并加盐、服务端异常的统一处理、axios 请求封装与请求异常统一处理、将请求方法挂到 Vue 上、登录状态的保存、登录成功后动态加载组件、角色资源关系管理、用户角色关系管理等。项目还提供部署视频教程(旧版/新版)、其他相关资料、50+ 项目需求文档,并参考 vue-chat。

许可证为 Apache License, Version 2.0,Copyright 2018 王松。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

  1. 准备环境:本地安装并启动 MySQL,提前创建一个空的数据库 vhr;提前准备好 Redis;提前准备好 RabbitMQ。

步骤 2 · clone 项目到本地:

可复制命令
git clone [email protected]:lenve/vhr.git

  1. 数据库脚本使用 Flyway 管理,不需要手动导入数据库脚本,只需要提前在本地 MySQL 中创建一个空的数据库 vhr,并修改项目中关于数据的配置,即 resources 目录下的 application.properties 文件。
  1. 在项目的 application.properties 文件中,将 Redis 配置改为自己的。
  1. 在项目的 application.properties 文件中将 RabbitMQ 的配置改为自己的;注意,RabbitMQ 需要分别修改 mailserver 和 vhrserver 的配置文件。
  1. 在 IntelliJ IDEA 中打开 vhr 项目,启动 mailserver 模块。
  1. 运行 vhrserver 中的 vhr-web 模块。至此服务端就启动成功了,此时直接在地址栏输入 http://localhost:8081/index.html 即可访问项目。
  1. 二次开发时启动前端:进入 vuehr 目录,在命令行依次输入 npm install 安装依赖,再输入 npm run serve 在 localhost:8080 启动项目。vuehr 项目中已配置端口转发,将数据转发到 Spring Boot 上,因此启动之后在浏览器输入 http://localhost:8080 就可以访问前端项目,所有请求通过端口转发将数据传到 Spring Boot 中;注意此时不要关闭 Spring Boot 项目。

步骤 9 · 上线构建:进入 vuehr 目录,执行

可复制命令
npm run build

。该命令执行成功之后,vuehr 目录下生成一个 dist 文件夹,将该文件夹中的 static 和 index.html 拷贝到 Spring Boot 项目中 resources/static/ 目录下,然后就可以像第 7 步那样直接访问。前后端分离部署也可参考使用 Nginx 部署前后端分离项目、解决跨域问题。

  1. 常见问题与注意事项:步骤 8 需要大家对 NodeJS、NPM 等有一定使用经验,不熟悉可先自行搜索学习,推荐 Vue 官方教程;邮件发送需要自己配置授权码,配置文件在 src/main/java/org/sang/common/EmailRunnable.java;RabbitMQ 需要分别检查 mailserver 和 vhrserver 的配置文件;前端开发时不要关闭 Spring Boot 项目。

来源教程配图

p278
配图 1 · p278查看原图
p279
配图 2 · p279查看原图
p280
配图 3 · p280查看原图
p281
配图 4 · p281查看原图

适用场景

构建或学习前后端分离的人力资源管理系统
演示 SpringBoot+Vue 企业级权限与角色资源管理
作为企业后台管理系统脚手架进行二次开发
用于学习 Spring Security
MyBatis
Redis
RabbitMQ
WebSocket 等技术集成
实现员工信息
部门
职位
职称