Overview of eladmin: An Open‑Source Spring Boot + Vue Backend Management System
The article presents eladmin, a fully open‑source, front‑back separated admin platform built with Spring Boot, JPA, Spring Security, Redis and Vue, detailing its features, modular architecture, code‑generation capabilities, and highlights that make it a valuable learning resource for developers.
The article introduces eladmin , an open‑source backend management system based on Spring Boot 2.1.0, JPA, Spring Security, Redis and Vue, featuring a front‑back separation, RBAC permission control, data dictionary, dynamic routing, and one‑click generation of front‑end and back‑end code.
The project is stable, continuously optimized by its author, and fully open source; its back‑end code quality and database design are commendable, while the front‑end uses the widely adopted Vue framework, making it easy to get started.
System Functions
User Management – add users with default password 123456.
Role Management – assign permissions and menu items, with department‑based data permissions.
Menu Management – dynamic routing configurable on the back‑end, supporting multi‑level menus.
Department Management – configurable organizational hierarchy displayed as a tree table.
Position Management – configure positions for each department.
Dictionary Management – maintain fixed data such as status and gender.
System Logs – record user actions and exceptions for debugging.
SQL Monitoring – Druid‑based database performance monitoring (default admin/123456).
Scheduled Tasks – Quartz integration with task logs.
Code Generation – highly flexible front‑end/back‑end code generation to reduce repetitive work.
Email Tools – send HTML formatted emails.
Qiniu Cloud Storage – sync data without logging into Qiniu.
Alipay Payment – integrated testing account for payment trials.
Service Monitoring – monitor server load.
Operations Management – one‑click application deployment.
Project Structure
The project follows a modular design by functionality:
eladmin-common – common utilities, configurations, custom annotations, aspects, base entities/DTOs, mappers, Redis, Swagger, RSA, and global exception handling.
eladmin-system – core module and application entry point, containing cross‑origin and static resource configuration, data permissions, thread pool, and core functional modules (login, monitoring, scheduling, operations, etc.).
eladmin-logging – logging module for system logs.
eladmin-tools – third‑party tools (image hosting, email, cloud storage, local storage, Alipay).
eladmin-generator – code generation module with templates located in the system module.
Detailed Structure
- eladmin-common 公共模块
- annotation 为系统自定义注解
- aspect 自定义注解的切面
- base 提供了Entity、DTO基类和mapstruct的通用mapper
- config 自定义权限实现、redis配置、swagger配置、Rsa配置等
- exception 项目统一异常的处理
- utils 系统通用工具类
- eladmin-system 系统核心模块(系统启动入口)
- config 配置跨域与静态资源,与数据权限
- thread 线程池相关
- modules 系统相关模块(登录授权、系统监控、定时任务、运维管理等)
- eladmin-logging 系统日志模块
- eladmin-tools 系统第三方工具模块
- eladmin-generator 系统代码生成模块Highlights Discovered
Unified exception handling design.
Annotation‑based permission design.
Interface‑level rate limiting.
Comprehensive tools such as Alipay integration, email, scheduled tasks, and various monitoring implementations.
Redis caching support.
The author also provides detailed documentation covering environment setup and in‑depth backend design, making the project an excellent learning resource. The source code is available at https://github.com/elunez/eladmin .
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Java Captain
Focused on Java technologies: SSM, the Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading; occasionally covers DevOps tools like Jenkins, Nexus, Docker, ELK; shares practical tech insights and is dedicated to full‑stack Java development.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
