基于 Spring Boot、Jpa、Security、Vue的先后端分离的后台管理系统

其实项目网上有不少了,可是教程比较详细的没多少,今天分享的项目从安装部署到代码具体功能都有很详细都说明。html

eladmin 是一款基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的先后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 RBAC,支持数据字典与数据权限管理,支持一键生成先后端代码,支持动态路由。
点击便可免费获取基于 Spring Boot、Jpa、Security、Vue的先后端分离的后台管理系统项目 源码前端

这个开源项目基本稳定,而且后续做者还会继续优化。彻底开源!这个真的要为原做者点个赞,若是你们以为这个项目有用的话,建议能够稍微捐赠一下原做者支持一下。后端整理代码质量、表设计等各个方面来讲都是很不错的。先后端分离,前端使用的是国内经常使用的 vue 框架,也比较容易上手。vue

系统功能redis

  • 用户管理:提供用户的相关配置,新增用户后,默认密码为 123456数据库

  • 角色管理:对权限与菜单进行分配,可根据部门设置角色的数据权限后端

  • 菜单管理:已实现菜单动态路由,后端可配置化,支持多级菜单跨域

  • 部门管理:可配置系统组织架构,树形表格展现七牛云存储

  • 岗位管理:配置各个部门的职位缓存

  • 字典管理:可维护经常使用一些固定的数据,如:状态,性别等服务器

  • 系统日志:记录用户操做日志与异常日志,方便开发人员定位拍错

  • SQL 监控:采用 druid 监控数据库访问性能,默认用户名 admin,密码 123456

  • 定时任务:整合 Quartz 作定时任务,加入任务日志,任务运行状况一目了然

  • 代码生成:高灵活度生成先后端代码,减小大量重复的工做任务

  • 邮件工具:配合富文本,发送 html 格式的邮件

  • 七牛云存储:可同步七牛云存储的数据到系统,无需登陆七牛云直接操做云数据

  • 支付宝支付:整合了支付宝支付而且提供了测试帐号,可自行测试

  • 服务监控:监控服务器的负载状况

  • 运维管理:一键部署你的应用

项目结构

项目采用按功能分模块的开发方式,结构以下

  • eladmin-common 为系统的公共模块,各类工具类,公共配置存在该模块

  • eladmin-system 为系统核心模块也是项目入口模块,也是最终须要打包部署的模块

  • eladmin-logging 为系统的日志模块,其余模块若是须要记录日志须要引入该模块

  • eladmin-tools 为第三方工具模块,包含:图床、邮件、云存储、本地存储、支付宝

  • eladmin-generator 为系统的代码生成模块,代码生成的模板在 system 模块中

详细结构

- 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 系统代码生成模块

我发现的亮点

  • 统一异常处理设计

  • 注解权限的设计

  • 接口级别的限流设计

  • 比较完善的工具,如支付宝,邮件,定时任务,各类监控的实现

  • 缓存 redis

后台首页

另外,做者最近还提供了一份详细的文档帮助小伙伴们学习这个项目。文档从环境搭建到后端每一块的详细设计都有涵盖,很是适合拿来学习!

该系统源码点击便可免费获取基于 Spring Boot、Jpa、Security、Vue的先后端分离的后台管理系统项目 源码