一、系统概述
Eladmin 是一款开源免费、轻量高效的前后端分离后台权限管理系统,基于 Spring Boot 2.x + Vue 2.x(新版支持Vue3+Element Plus)技术栈开发,专为中小型项目快速搭建后台管理架构设计。项目开源无后门、代码规范、注释详尽,是国内使用率极高的通用后台脚手架,广泛应用于企业管理、OA、CRM、各类业务系统后台开发场景。
系统核心定位:开箱即用的权限脚手架,无需从零开发基础权限、菜单、用户、日志等通用功能,支持快速二次开发,大幅缩短项目开发周期。
二、核心技术栈
2.1 后端技术
Spring Boot、Spring Security、JWT、MyBatis-Plus、Redis、MySQL、Swagger接口文档、Lombok、FastDFS、接口限流
2.2 前端技术
Vue2/Vue3、Element UI/Element Plus、Vuex、Axios、ECharts、动态路由、响应式布局
三、系统核心功能详解
Eladmin 覆盖后台系统100%通用基础功能,同时集成实用扩展功能,满足绝大多数业务场景需求,核心功能分类如下:
3.1 权限管理模块(核心亮点)
采用RBAC权限模型(用户-角色-菜单-权限),支持精细化权限控制,适配企业多级权限体系:
• 用户管理:新增、编辑、禁用、删除用户,重置密码、分配角色,支持批量操作,默认初始密码统一配置
• 角色管理:自定义角色,分配菜单权限、按钮权限、数据权限,支持角色数据范围隔离(本人、本部门、全部门、自定义)
• 菜单管理:动态路由配置,支持多级菜单、外部链接、隐藏菜单,后端配置实时生效,无需前端改代码
• 部门管理:树形架构展示企业组织架构,支持部门新增、排序、层级调整,关联用户数据权限
• 岗位管理:配置系统岗位信息,绑定用户与岗位,适配企业人事架构管理
3.2 系统监控模块
• 日志管理:登录日志、操作日志、异常日志全记录,可查询、导出、清空,精准追溯系统操作行为
• 在线用户:实时查看当前登录用户,支持强制下线、批量踢线
• 接口限流:内置接口限流机制,防止恶意请求、高频刷接口,保护服务稳定性
• 服务监控:展示服务器CPU、内存、磁盘、JVM运行状态,实时监控系统负载
3.3 高效开发工具模块
• 代码生成器:核心神器,一键生成前后端完整代码(Controller、Service、Mapper、Vue页面、接口),单表业务无需手写代码,大幅提升开发效率
• 数据字典:统一管理系统通用状态(启用/禁用、男女、状态码等),全局统一调用,便于后期维护修改
• 定时任务:可视化配置Cron表达式,支持任务新增、启停、编辑、日志查询,无需手动写定时任务代码
• 文件管理:集成文件上传、下载、预览、删除功能,支持FastDFS、本地存储等多种存储方式
3.4 实用扩展功能
• 主题切换:支持多套系统主题、布局切换,自定义侧边栏、导航栏样式
• 响应式适配:适配电脑、平板等多终端屏幕,兼容主流浏览器
• 接口文档:内置Swagger,自动生成接口文档,支持在线调试接口
• 脱敏处理:用户手机号、身份证等敏感数据自动脱敏,保障数据安全
四、系统优缺点分析
4.1 核心优点
• 轻量简洁,上手极低:架构精简、无冗余功能,代码注释详细,新手可快速读懂源码,二次开发门槛极低
• 开箱即用,功能齐全:集成所有后台通用功能,无需重复开发权限、日志、用户管理等基础模块
• 权限精细化:支持按钮级、接口级、数据级三层权限控制,满足企业复杂权限场景
• 开发效率极高:一键代码生成器,单表业务开发效率提升80%以上
• 开源免费无套路:完全开源、无商业限制、无后门,个人、企业均可免费商用
• 社区活跃:长期维护更新,社区问题解答及时,BUG修复快,配套教程丰富
• 部署灵活:支持本地IDE部署、服务器手动部署、Docker一键部署,适配多种场景
4.2 缺点与不足
• 原生不支持微服务:默认单体架构,大型分布式项目需手动改造适配微服务
• 前端版本迭代滞后:主流版本仍以Vue2为主,Vue3新版生态不如Vue2成熟,部分插件适配不完善
• 无内置工作流:原生不支持OA工作流、审批流,需要自行集成Flowable等插件
• 高级功能薄弱:无大数据大屏、多级租户、多数据源等高级功能,复杂场景需二次开发
• 依赖固定:对JDK、MySQL版本有硬性要求,高版本环境需适配修改
五、保姆级部署教程(本地+服务器Docker)
本文提供两种部署方式:本地开发部署(适合开发调试)、服务器Docker部署(适合线上正式环境),全程零跳过步骤,新手直接复刻即可。
5.1 部署环境要求
基础环境必备
• JDK:1.8+(推荐1.8稳定版)
• MySQL:5.7 / 8.0(推荐8.0)
• Redis:5.0+
• Node.js:14.x~16.x(前端编译必备)
• Maven:3.6+
5.2 本地开发部署教程(Windows/Mac通用)
步骤1:下载源码
分别克隆后端、前端源码至本地文件夹(建议英文路径,无中文无空格)
| Plain Text # 克隆后端源码 git clone https://gitee.com/elunez/eladmin.git # 克隆前端源码 git clone https://gitee.com/elunez/eladmin-web.git |
步骤2:初始化数据库
1. 打开MySQL,新建数据库 eladmin,编码选择 utf8mb4,排序规则 utf8mb4_general_ci
2. 找到后端项目根目录 eladmin/sql/eladmin.sql
3. 将该SQL文件导入新建的eladmin数据库,等待导入完成(自动创建所有数据表、初始化管理员账号)
步骤3:配置后端项目
1. 使用IDEA打开eladmin后端项目,等待Maven自动下载依赖
2. 修改配置文件:src/main/resources/application-dev.yml(开发环境)
3. 修改数据库配置、Redis配置,替换为自己本地账号密码
| Plain Text # 数据库配置 spring: datasource: url: jdbc:mysql://localhost:3306/eladmin?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true username: 你的MySQL账号 password: 你的MySQL密码 # Redis配置 redis: host: localhost port: 6379 password: 你的Redis密码(无密码则删除该行) |
1. 可选配置:开启Swagger文档,修改 application-prod.yml 中 swagger.enabled: true
2. 启动项目:找到启动类 EladminApplication.java,右键Run启动
3. 出现 Started EladminApplication in xx seconds 即为后端启动成功,默认端口8000
步骤4:配置并启动前端项目
1. 打开终端,进入eladmin-web前端项目根目录
2. 安装依赖(必须使用指定Node版本)
| Plain Text npm install --registry=https://registry.npmmirror.com |
1. 修改前端接口地址:.env.development,确保接口地址指向本地后端http://localhost:8000
2. 启动前端项目
| Plain Text npm run dev |
启动成功后,默认访问地址:http://localhost:8080
步骤5:登录系统
默认超级管理员账号密码:admin / 123456
登录后即可体验所有功能,本地部署完成。
5.3 服务器Docker一键部署教程(线上生产环境)
适用于CentOS7+/Ubuntu服务器,无需复杂环境配置,Docker自动化部署,稳定高效。
步骤1:服务器安装Docker与Docker Compose
| Plain Text # 安装Docker yum install -y docker-ce # 启动Docker并设置开机自启 systemctl start docker && systemctl enable docker # 安装Docker Compose yum install -y docker-compose |
步骤2:拉取项目源码并配置
| Plain Text # 新建项目文件夹 mkdir -p /data/eladmin && cd /data/eladmin # 克隆源码 git clone https://gitee.com/elunez/eladmin.git git clone https://gitee.com/elunez/eladmin-web.git |
修改后端生产配置 application-prod.yml,配置数据库、Redis、服务器域名
步骤3:执行Docker一键部署
| Plain Text # 进入后端docker目录 cd eladmin/docker # 启动所有服务(MySQL、Redis、后端、前端) docker-compose up -d |
执行完成后,Docker会自动拉取镜像、初始化数据库、启动前后端服务
步骤4:开放服务器端口
服务器防火墙放行端口:80、8000、3306、6379
| Plain Text # CentOS防火墙放行 firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=8000/tcp firewall-cmd --reload |
步骤5:访问线上系统
浏览器输入服务器IP地址,默认账号密码:admin / 123456,线上部署完成。
六、新手基础使用指南
6.1 基础权限配置流程
新建业务后台标准配置顺序:新增部门→新增岗位→新增角色(分配菜单权限)→新增用户(绑定角色/部门)
6.2 代码生成器使用步骤
1. 数据库创建业务数据表
2. 系统后台进入【工具-代码生成】,导入数据表
3. 配置模块名、功能名,一键生成前后端代码
4. 将生成的代码对应替换到项目目录,重启后端即可使用
6.3 常见问题解决
• 前端启动报错:更换Node14版本,重新执行npm install
• 数据库连接失败:检查数据库地址、账号密码、是否开启远程连接
• 权限报错:检查用户角色是否分配对应菜单、接口权限
• Redis报错:确保Redis服务正常启动,配置文件地址端口无误
七、总结
Eladmin 是中小型项目最优后台脚手架之一,凭借轻量、免费、易用、高效的特点,适合个人开发、中小企业项目、毕业设计、快速迭代业务系统。虽然不适配大型分布式微服务、复杂工作流场景,但90%的通用后台业务均可完美覆盖,配合一键代码生成器可极大降低开发成本,是新手入门后台开发、企业快速搭建项目的首选框架。