当前实现:
backend/:Java 21 + Spring Boot + Maven + MySQLfrontend/:Vue 3 + Vite- 功能:用户名/密码登录、显示名称+用户名+密码注册
- 鉴权:JWT(登录/注册返回
token,前端自动携带Authorization)
# 或使用自己的账号密码
CREATE DATABASE IF NOT EXISTS gcsc DEFAULT CHARACTER SET utf8mb4;
CREATE USER IF NOT EXISTS 'gcsc'@'localhost' IDENTIFIED BY 'gcsc';
GRANT ALL PRIVILEGES ON gcsc.* TO 'gcsc'@'localhost';
FLUSH PRIVILEGES;cd backend
mvn spring-boot:run后端默认地址:http://localhost:8080
若启动时报 Unable to determine Dialect without JDBC metadata,按下面检查:
- 确认 MySQL 已启动,并且
gcsc库存在。 - 确认连接用户是
gcsc,不是gcsc@localhost:3306这样的完整串。 - 用下面命令手工验证连接:
mysql -ugcsc -pgcsc -h127.0.0.1 -P3306 -e "use gcsc; show tables;"cd frontend
npm install
npm run dev前端默认地址:http://localhost:5173
- 后端
- 用户表:
backend/src/main/java/com/gcsc/studentcenter/entity/AppUser.java - 注册/登录:
backend/src/main/java/com/gcsc/studentcenter/service/AuthService.java - JWT:
backend/src/main/java/com/gcsc/studentcenter/service/JwtService.java - 认证过滤器:
backend/src/main/java/com/gcsc/studentcenter/config/JwtAuthenticationFilter.java
- 用户表:
- 前端
- 登录页:
frontend/src/views/LoginView.vue - 注册页:
frontend/src/views/RegisterView.vue - 首页:
frontend/src/views/HomeView.vue
- 登录页:
feat:新功能style:仅样式改动fix:修复问题docs:文档改动refactor:重构(不改功能)chore:工程维护- 前缀后建议使用中文描述,例如:
feat: 完成注册登录接口
- 注册登录 ✅ 2026-03-06
- 分角色(学生/教师/管理员)
- 填写信息(学生)
- 导出信息(教师)
- 发布近期成就/动态(教师/学生)
- 社区互动(教师/学生)
- 分学院(看情况)
- TODO: 页面设计增加logo的位置
登录进来就看见的页面,左上为目前登录信息小卡片,左下为不同分区的菜单栏,右侧为学院内动态/置顶公告。

个人信息页,学生在该页面填写个人信息,初次登录会提示进入该页面填写,后续更改需要请求变更(或取消该限制,直接更改)

教师/管理员可以在此页面筛选学生,并选择对应的学生导出信息。

设置页,点击小卡片右上角可进入,目前还没想好有什么可以设置的。

成就页,学生可在成就页记录自己的成就。成就可配图(证书,记录等),形成画廊展示。可以为该成就补充信息,如名字,经历时间,获得成就的日期,该成就的描述,个人感想等。


