You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
zhangliang ac09197281
Merge remote-tracking branch 'origin/main'
2 weeks ago
.idea 修复了若干问题,添加了反调试功能 2 weeks ago
.vscode 修复了若干问题,添加了反调试功能 2 weeks ago
logs Merge remote-tracking branch 'origin/master' 2 weeks ago
sql 修复了若干问题,添加了反调试功能 2 weeks ago
student_end Merge remote-tracking branch 'origin/master' 2 weeks ago
student_ui Merge remote-tracking branch 'origin/master' 2 weeks ago
LICENSE add LICENSE. 2 weeks ago
README.md Merge remote-tracking branch 'origin/master' 2 weeks ago
Student_Demo_Springboot.iml 实现了管理员端专业信息、显示详细信息、教师详细信息,教师端个人信息、学生端个人信息、我的课程的功能的实现 2 weeks ago

README.md

学生信息管理系统

一个基于Spring Boot + Vue 3的现代化学生信息管理系统支持学生、教师、管理员三种角色的完整功能管理。

🚀 项目特色

  • 现代化UI设计 - 基于Element Plus的响应式界面
  • 多角色权限管理 - 学生、教师、管理员分级权限控制
  • 深色模式支持 - 完整的白天/黑夜主题切换
  • 可收缩侧边栏 - 优化的用户界面体验
  • 完整的CRUD操作 - 支持所有数据的增删改查
  • 安全的密码加密 - 使用Scrypt算法加密存储
  • 分页查询优化 - 所有列表页面支持分页和搜索

📋 系统功能

👨‍💼 管理员功能

  • 权限设置 - 系统功能开关控制
  • 学院管理 - 学院信息的增删改查
  • 专业管理 - 专业信息维护
  • 课程管理 - 课程信息和选课人数统计
  • 用户管理 - 学生、教师、管理员账户管理
  • 选课信息 - 全局选课记录查看
  • 系统设置 - 系统参数配置

👨‍🏫 教师功能

  • 我的课程 - 查看任教课程信息
  • 学生管理 - 查看选课学生信息
  • 成绩管理 - 上传和管理学生成绩
  • 个人信息 - 教师个人资料维护

👨‍🎓 学生功能

  • 选课中心 - 在线选课(需管理员开启权限)
  • 我的课程 - 查看已选课程
  • 我的成绩 - 查看各科成绩
  • 个人信息 - 学生个人资料维护

🛠️ 技术栈

后端技术

  • Spring Boot 3.5.10 - 主框架
  • MyBatis 3.0.5 - ORM框架
  • MySQL 8.0 - 数据库
  • Java 17 - 开发语言
  • Maven - 项目管理
  • Scrypt - 密码加密
  • Lombok - 代码简化

前端技术

  • Vue 3.5.24 - 前端框架
  • Element Plus 2.13.0 - UI组件库
  • Vue Router 4.6.4 - 路由管理
  • Axios 1.13.2 - HTTP客户端
  • Vite 7.2.4 - 构建工具
  • Scrypt-js - 前端密码加密

📁 项目结构

Student_Demo_Springboot/
├── student_end/                 # 后端项目
│   ├── src/main/java/com/xky/
│   │   ├── config/             # 配置类
│   │   ├── controller/         # 控制器层
│   │   ├── mapper/             # 数据访问层
│   │   ├── pojo/              # 实体类
│   │   ├── service/           # 业务逻辑层
│   │   └── util/              # 工具类
│   ├── src/main/resources/
│   │   └── application.properties
│   └── pom.xml
├── student_ui/                  # 前端项目
│   ├── src/
│   │   ├── views/             # 页面组件
│   │   ├── router/            # 路由配置
│   │   ├── App.vue            # 根组件
│   │   └── main.js            # 入口文件
│   ├── package.json
│   └── vite.config.js
└── sql/
    └── student.sql             # 数据库脚本

🗄️ 数据库设计

系统包含以下主要数据表:

  • user - 用户基础信息表
  • student_info - 学生详细信息表
  • teacher_info - 教师详细信息表
  • college - 学院信息表
  • major - 专业信息表
  • course - 课程信息表
  • sc - 选课关系表
  • score - 成绩信息表
  • system_permission - 系统权限表
  • admin_registration_request - 管理员注册申请表

🚀 快速开始

环境要求

  • Java 17+
  • Node.js 16+
  • MySQL 8.0+
  • Maven 3.6+

后端启动

  1. 克隆项目
git clone https://gitee.com/strong-and-prosperous_6_0/student-demo---latest-version.git
cd Student_Demo_Springboot
  1. 配置数据库
# 创建数据库
mysql -u root -p < sql/course_selection_system.sql
  1. 修改配置文件
# student_end/src/main/resources/application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/course_selection_system
spring.datasource.username=your_username
spring.datasource.password=your_password
  1. 启动后端服务
cd student_end
mvn spring-boot:run

后端服务将在 http://localhost:8080 启动

前端启动

  1. 安装依赖
cd student_ui
npm install
  1. 启动开发服务器
npm run dev

前端服务将在 http://localhost:5174 启动

👥 默认账户

系统提供以下测试账户:

角色 用户名 密码 说明
超级管理员 superadmin admin123 拥有所有权限
管理员 admin admin123 管理员权限
教师 23513001 123456 教师权限
学生 23513002 123456 学生权限

🎨 界面预览

登录界面

  • 支持用户名/密码登录
  • 图形验证码验证
  • 注册和忘记密码功能 1.png

主界面

  • 可收缩的侧边栏导航
  • 深色/浅色主题切换
  • 响应式布局设计
  • 面包屑导航 2.png 3.png 4.png 5.png 6.png

数据管理

  • 统一的表格展示
  • 分页查询支持
  • 搜索过滤功能
  • 完整的增删改查操作

🔧 开发说明

API接口规范

  • 统一返回格式:{code: 200, message: "success", data: {}}
  • RESTful API设计
  • 跨域支持配置

前端开发规范

  • Vue 3 Composition API
  • Element Plus组件库
  • 统一的样式变量管理
  • 响应式设计适配

安全特性

  • Scrypt密码加密
  • Session会话管理
  • 权限验证中间件
  • SQL注入防护

📝 更新日志

v1.0.0 (2024-12-29)

  • 完整的学生信息管理系统
  • 🎨 现代化UI设计和深色模式
  • 🔐 安全的用户认证和权限管理
  • 📱 响应式界面适配
  • 🔍 分页查询和搜索功能
  • ⚙️ 系统设置和权限控制

🤝 贡献指南

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情

📞 联系方式

如有问题或建议,请通过以下方式联系:

如果这个项目对你有帮助,请给它一个星标!