1. 项目背景与核心价值
去年帮母校信息中心升级迎新系统时,我深刻体会到传统线下报到流程的痛点:新生挤在体育馆排长队、辅导员手动核对几十份材料、财务处和宿管科数据不同步...这套基于SpringBoot+Vue的迎新管理系统,正是为解决这些实际问题而生。
系统采用前后端分离架构,后端用SpringBoot提供RESTful API,前端用Vue构建响应式界面,MyBatis+MySQL处理数据持久化。相比我们之前用的某商业软件,这套方案最大的优势是可定制化——从宿舍分配算法到缴费接口对接,都能根据学校实际需求灵活调整。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构解析
2.1 后端技术栈选型
SpringBoot 3.2.x版本作为基础框架,主要考虑因素:
- 内嵌Tomcat简化部署
- 自动配置减少XML编写
- 与MyBatis的天然兼容性
数据库选用MySQL 8.0而非MariaDB的原因:
- 原生JSON支持更好(存储学生特长等非结构化数据)
- 窗口函数便于生成报到率统计报表
- 官方Docker镜像更便于快速部署
2.2 前端技术方案
Vue 3组合式API带来两大优势:
- 动态表单生成器:用
<component :is>实现不同院系的差异化信息采集 - 可视化报到看板:基于ECharts的实时数据监控
javascript复制// 典型的数据看板组件
const liveData = ref(null)
onMounted(async () => {
liveData.value = await fetch('/api/report/real-time')
})
3. 核心功能实现
3.1 智能宿舍分配模块
采用改进的遗传算法实现:
- 初始化种群:随机生成N组分配方案
- 适应度函数:考虑同专业聚集度、性别楼层隔离等约束
- 选择交叉:保留优秀方案并重组
java复制// 适应度计算示例
public double calculateFitness(DormPlan plan) {
double score = 0;
score += sameMajorWeight * countSameMajor(plan);
score -= genderCo
