基于 SpringBoot 3 + Vue 3 + Element Plus + MyBatis-Plus + MySQL 实现的简洁版学生管理系统。
common: 包含统一返回结果Result类、JWT 工具类等。config: Spring MVC 配置、MyBatis-Plus 分页插件配置、Security 加密配置、JWT 拦截器等。controller: 暴露 API 接口,包括用户注册登录、学生 CRUD。entity: 数据库实体类 (User, Student)。mapper: MyBatis-Plus Mapper 接口。service: 业务逻辑接口及实现。resources:application.yml: 数据库、JWT 相关配置。mapper/: 自定义 SQL 的 XML 文件 (本项目使用 MyBatis-Plus 自动实现,暂无自定义 XML)。
api: 定义与后端对接的 Axios 接口。router: 路由配置及登录拦截守卫。utils: Axios 拦截器封装 (处理 Token 携带及权限校验)。views:Login.vue: 登录页面。Register.vue: 注册页面。Student.vue: 学生信息管理主页 (核心 CRUD 逻辑)。
layout: 侧边栏和顶栏布局。
- 确保已安装 MySQL 8.0。
- 登录 MySQL (账号:
Your account, 密码:Your password)。 - 执行根目录下的
db.sql文件创建数据库和表。
- 进入
student-manager-backend目录。 - 确保已安装 JDK 17 和 Maven。
- 修改
src/main/resources/application.yml中的数据库连接信息 (如果需要)。 - 运行
mvn spring-boot:run或在 IDE 中启动StudentManagerApplication。
- 进入
student-manager-frontend目录。 - 确保已安装 Node.js。
- 执行
npm install安装依赖。 - 执行
npm run dev启动项目。 - 访问
http://localhost:5173。
- 权限校验: 使用 JWT 令牌,未登录无法进入系统。
- 密码安全: 使用 BCryptPasswordEncoder 加密存储。
- 功能齐全: 支持学生信息的增删改查、分页、模糊搜索、批量删除。
- 界面精美: 采用 Vue 3 + Element Plus 构建现代化的 UI。