👀 在线预览 | 📖 官方博客 | 🦄 Gitee | 🚢 Github

📢 项目简介

在线预览: https://vue3.youlai.tech

youlai-boot 基于 JDK 17、Spring Boot 3、Spring Security 6、JWT、Redis、Mybatis-Plus、Knife4j、Vue 3、Element-Plus 构建的前后端分离单体权限管理系统。

  • 🚀 开发框架: 使用 Spring Boot 3.0 和 Vue 3,以及 Element-Plus 等主流技术栈,实时更新。

  • 🔐 安全认证: 结合 Spring Security 和 JWT 提供安全、无状态、分布式友好的身份验证和授权机制。

  • 🔑 权限管理: 基于 RBAC 模型,实现细粒度的权限控制,涵盖接口方法和按钮级别。

  • 🛠️ 功能模块: 包括用户管理、角色管理、菜单管理、部门管理、字典管理等多个功能。

  • 📘 接口文档: 自动生成接口文档,支持在线调试,提高开发效率。

📁 项目目录

youlai-boot
├── sql                                 # SQL脚本
    ├── mysql5                          # MySQL5 脚本
    ├── mysql8                          # MySQL8 脚本
├── src                                 # 源码目录
    ├── common                          # 公共模块
    ├── config                          # 自动装配配置
        ├── CorsConfig                  # 跨域共享配置
        ├── RedisConfig                 # Redis 配置
        ├── SwaggerConfig               # API 接口文档配置
        ├── WebMvcConfig                # WebMvc 配置
    ├── controller                      # 控制层
    ├── converter                       # MapStruct转换器
    ├── core                            # 核心模块
        ├── mybatisplus                 # Mybatis-Plus 配置和插件
        ├── security                    # Spring Security 安全配置和扩展
    ├── filter                          # 过滤器
        ├── RequestLogFilter            # 请求日志过滤器
        ├── VerifyCodeFilter            # 验证码过滤器
    ├── model                           # 模型层
        ├── bo                          # 业务对象
        ├── dto                         # 数据传输对象
        ├── entity                      # 实体对象
        ├── form                        # 表单对象
        ├── query                       # 查询参数对象
        ├── vo                          # 视图对象
    ├── mapper                          # 数据库访问层
    ├── plugin                          # 插件(可选)
        ├── dupsubmit                   # 防重提交插件,用于防止表单重复提交
        ├── easyexcel                   # EasyExcel 插件,Excel 文件的读写
        ├── rabbitmq                    # RabbitMQ 插件,消息队列交互
        ├── websocket                   # WebSocket 插件,实时双向通信
        ├── xxljob                      # XXL-JOB 插件,分布式任务调度和执行
    ├── service                         # 业务逻辑层
└── end       

🌺 前端工程

🌈 接口文档

🚀 项目启动

  1. 数据库初始化

    执行 youlai_boot.sql 脚本完成数据库创建、表结构和基础数据的初始化。

  2. 修改配置

    application-dev.yml 修改MySQL、Redis连接配置;

  3. 启动项目

    执行 SystemApplication.java 的 main 方法完成后端项目启动;

    访问接口文档地址 http://ip:port/doc.html 验证项目启动是否成功。

💖 加交流群

11-27 00:41