# MeetingCode **Repository Path**: YangfbSoftWare/meeting-code ## Basic Information - **Project Name**: MeetingCode - **Description**: 会议代码 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-21 - **Last Updated**: 2026-02-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 后台管理系统 一个基于 Vue3 + Spring Boot + MyBatis Plus + MySQL + Redis 的后台管理系统,实现了完整的登录认证功能。 ## 技术栈 ### 后端 - Spring Boot 2.7.14 - MyBatis Plus 3.5.3.1 - MySQL 8.0 - Redis - JWT - Hutool工具类 - Lombok ### 前端 - Vue 3 - Vue Router 4 - Pinia - Axios - Element Plus - Vite ## 项目结构 ``` MeetingCode/ ├── backend/ # 后端项目 │ ├── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/meeting/admin/ │ │ │ │ ├── common/ # 公共类 │ │ │ │ ├── config/ # 配置类 │ │ │ │ ├── controller/ # 控制器 │ │ │ │ ├── dto/ # 数据传输对象 │ │ │ │ ├── entity/ # 实体类 │ │ │ │ ├── exception/ # 异常处理 │ │ │ │ ├── mapper/ # Mapper接口 │ │ │ │ ├── service/ # 服务层 │ │ │ │ └── utils/ # 工具类 │ │ │ └── resources/ │ │ │ ├── application.yml # 配置文件 │ │ │ └── sql/ │ │ │ └── init.sql # 数据库初始化脚本 │ └── pom.xml │ └── frontend/ # 前端项目 ├── src/ │ ├── api/ # API接口 │ ├── router/ # 路由配置 │ ├── utils/ # 工具类 │ ├── views/ # 页面组件 │ ├── App.vue # 根组件 │ └── main.js # 入口文件 ├── index.html ├── package.json └── vite.config.js ``` ## 快速开始 ### 环境要求 - JDK 1.8+ - Node.js 16+ - MySQL 8.0+ - Redis 5.0+ ### 后端启动 1. **创建数据库** ```sql 执行 backend/src/main/resources/sql/init.sql 脚本 ``` 2. **修改配置** 编辑 `backend/src/main/resources/application.yml`,修改数据库和Redis连接信息: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/meeting_admin?... username: root password: your_password redis: host: localhost port: 6379 ``` 3. **启动后端** ```bash cd backend mvn spring-boot:run ``` 或者在IDEA中直接运行 `MeetingAdminApplication` 主类 后端服务将在 http://localhost:8080 启动 ### 前端启动 1. **安装依赖** ```bash cd frontend npm install ``` 2. **启动前端** ```bash npm run dev ``` 前端服务将在 http://localhost:3000 启动 ## 功能说明 ### 登录功能 1. **登录接口** - 接口地址:`POST /api/auth/login` - 请求参数: ```json { "username": "admin", "password": "admin123" } ``` - 响应数据: ```json { "code": 200, "message": "登录成功", "data": { "token": "eyJhbGciOiJIUzI1NiJ9...", "userId": 1, "username": "admin", "nickname": "系统管理员", "avatar": null } } ``` 2. **默认账号** - 用户名:`admin` - 密码:`admin123` ## 核心功能实现 ### 后端核心功能 1. **JWT认证** - 使用JWT进行用户身份认证 - Token存储在Redis中,有效期24小时 - 支持Token验证和过期检查 2. **密码加密** - 使用BCrypt加密算法对用户密码进行加密 - 登录时进行密码验证 3. **统一响应格式** - 所有接口返回统一的JSON格式 - 包含code、message、data三个字段 4. **全局异常处理** - 统一处理业务异常和系统异常 - 返回友好的错误提示信息 5. **跨域配置** - 支持前后端分离开发 - 允许所有域名跨域访问 ### 前端核心功能 1. **登录页面** - 美观的登录界面 - 表单验证 - 登录状态管理 2. **路由守卫** - 未登录用户自动跳转到登录页 - 已登录用户访问登录页自动跳转到首页 3. **请求拦截** - 自动在请求头中添加Token - 统一处理响应数据 - 统一处理错误信息 4. **Token管理** - Token存储在localStorage中 - 支持Token的获取、设置和删除 ## 开发说明 ### 后端开发 1. **添加新接口** - 在 `controller` 包中创建控制器 - 在 `service` 包中创建服务接口和实现 - 在 `mapper` 包中创建Mapper接口 2. **数据库操作** - 使用MyBatis Plus提供的BaseMapper - 支持LambdaQueryWrapper进行条件查询 ### 前端开发 1. **添加新页面** - 在 `views` 目录下创建Vue组件 - 在 `router/index.js` 中配置路由 2. **添加新接口** - 在 `api` 目录下创建对应的API文件 - 使用封装好的request工具类发送请求 ## 注意事项 1. **数据库连接** - 确保MySQL服务已启动 - 确保数据库连接信息正确 2. **Redis连接** - 确保Redis服务已启动 - 确保Redis连接信息正确 3. **端口占用** - 后端默认端口:8080 - 前端默认端口:3000 - 如有冲突,请修改配置文件 ## 后续扩展 系统已搭建好基础架构,可以在此基础上继续开发以下功能: 1. 用户管理(增删改查) 2. 角色权限管理 3. 菜单管理 4. 日志管理 5. 数据字典 6. 系统配置 7. 文件上传 8. 数据导出 ## 联系方式 如有问题,请联系开发人员。