1. 项目背景与核心价值
作为一名经历过多次校园社交系统开发的程序员,我深知传统校园社交平台存在的痛点:功能单一、交互生硬、缺乏场景化设计。去年接手这个毕业设计项目时,我决定用Spring Boot和微信小程序打造一个真正符合学生需求的社交平台——FaceBox。
这个项目的独特之处在于将六大学生高频场景(闲置交易、学习交流、代办协作、情感表白、日常分享、资讯获取)有机整合。不同于市面上大多数"大而全"的社交应用,我们通过微信小程序轻量化实现,数据响应速度比传统APP快40%,首屏加载时间控制在800ms以内。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构设计解析
2.1 整体技术选型
采用经典的B/S三层架构:
- 前端:微信小程序 + WXML/WXSS
- 后端:Spring Boot 2.5.6 + MyBatis-Plus
- 数据库:MySQL 8.0(最终兼容5.7)
选择这套组合主要基于三点考量:
- 微信小程序无需安装,打开即用,符合学生"即需即走"的使用习惯
- Spring Boot的自动配置特性大幅减少XML配置,使项目更易于维护
- MyBatis-Plus的代码生成器可快速完成90%的CRUD操作
2.2 数据库关键设计
用户表设计采用垂直分表策略:
sql复制CREATE TABLE `student` (
`id` int NOT NULL AUTO_INCREMENT,
`account` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '学号',
`password` varchar(64) NOT NULL COMMENT 'SHA256加密',
`name` varchar(10) DEFAULT NULL,
`avatar` varchar(255) DEFAULT 'default.jpg',
PRIMARY KEY (`id`),
UNIQUE KEY `account_UNIQUE` (`account`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
社交关系表采用"双主键+状态位"设计:
sql复制CREAT
