Skip to content

About

一个全vibe的学生管理系统

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

学生管理系统桌面客户端

基于 Flutter Windows + Spring Boot 3 + MyBatis-Plus + Spring Security + JWT + MySQL 的学生管理系统。当前项目主线是 Windows 桌面客户端:用户通过 StudentManage.exe 登录和操作,后端负责认证、权限、业务接口和数据访问。

当前状态

  • 已完成 Windows 桌面客户端基础形态,窗口标题为 学生管理系统,可执行文件名为 StudentManage.exe。
  • 登录页支持配置后端服务地址,并通过健康检查检测服务是否在线。
  • 后端提供 JWT 认证、统一返回结构、全局异常处理、角色权限和关键数据范围控制。
  • 已实现院系、专业、班级、教师、学生学籍、课程排课、选课/课表、成绩、用户管理、仪表盘和个人资料。
  • 当前适合作为本地演示、课程设计、毕业设计雏形或继续迭代的桌面管理系统基础版本。

技术栈

  • 桌面客户端:Flutter 3.38+、Dart 3.10+、Provider、GoRouter、Dio
  • 后端服务:Java 21、Spring Boot 3.4、Spring Security、MyBatis-Plus
  • 数据库:MySQL 8.x

功能概览

  • 登录认证:用户名密码登录、JWT 鉴权、获取当前用户资料、修改本人密码。
  • 桌面连接:客户端保存后端地址,支持检测服务在线状态。
  • 角色体系:支持 ADMIN、TEACHER、STUDENT 三类角色。
  • 基础资料:院系、专业、班级、教师、学生、课程、选课、成绩、系统用户的分页查询、详情、新增、修改、删除。
  • 学籍能力:维护入学日期、预计毕业日期、学籍状态、邮箱、地址和监护人信息。
  • 课程排课:维护课程学期、星期、节次、教室和上课周次。
  • 选课课表:管理员维护学生选课关系;教师查看授课名单;学生查看本人课表。
  • 批量能力:学生和成绩支持 CSV 模板下载、批量导入、按筛选条件导出。
  • 权限控制:学生只能看本人信息、选课课表和成绩;教师只能看本人课程、授课名单并维护本人课程成绩;管理员管理全量数据。
  • 桌面体验:角色菜单、仪表盘、个人资料、403/404 状态页、通用 CRUD 表格和动态表单。

仓库结构

StudentManage/
├── Backend/      # Spring Boot 后端服务
├── Frontend/     # Flutter Windows 桌面客户端
├── SQLFile/      # MySQL 初始化脚本
└── docs/         # 接口、权限、部署、桌面客户端和测试文档

快速开始

1. 初始化数据库

执行 SQLFile/init.sql 创建库表并导入演示数据。

2. 启动后端

默认端口为 8080。建议通过环境变量注入数据库和 JWT 配置:

$env:STUDENT_MANAGE_DB_URL="jdbc:mysql://localhost:3306/student_manage?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai"
$env:STUDENT_MANAGE_DB_USERNAME="root"
$env:STUDENT_MANAGE_DB_PASSWORD="你的数据库密码"
$env:STUDENT_MANAGE_JWT_SECRET="替换成足够长的随机密钥"
cd Backend
.\mvnw.cmd spring-boot:run

健康检查:

GET http://localhost:8080/api/system/health

3. 启动桌面客户端

cd Frontend
flutter pub get
flutter run -d windows

登录页可修改后端服务地址。本地默认连接 http://localhost:8080。

演示账号

初始化脚本内置以下账号,默认密码均为 123456:

  • 管理员:admin
  • 教师:liuzhiqiang、chenxiaodong
  • 学生:wanghaoran、lisiqi

常用命令

# 后端测试
cd Backend
.\mvnw.cmd test

# 前端静态检查与测试
cd Frontend
flutter analyze
flutter test

# Windows 桌面客户端构建
flutter build windows --release

Windows 构建需要安装 Visual Studio 2022 或 Build Tools,并勾选 Desktop development with C++。

文档索引

About

一个全vibe的学生管理系统

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages