这是一个基于 Spring Boot + PostgreSQL + Redis 的后端服务,以及基于 React + Ant Design 的前端应用。项目包含用户注册/登录、帖子发布与浏览、评论互动、管理员审核与禁言等功能,适用于校园信息交流场景。
HNU-backend/:后端(Spring Boot + MyBatis Plus + Redis + JWT)HNU-frontend/:前端(React + Ant Design + Vite)baseSQL.sql:数据库建表脚本seed_users.sql:批量用户数据脚本seed_posts.sql:批量帖子数据脚本
- JDK 17
- PostgreSQL 12+
- Redis 6+
- Node.js 18+
- 创建数据库(示例名:
hnu_campus),并执行建表脚本:
-- baseSQL.sql- 批量插入用户(默认密码
123456,状态pending,角色STUDENT):
-- seed_users.sql- 批量插入帖子:
-- seed_posts.sql进入 HNU-backend,修改数据库和 Redis 连接(src/main/resources/application.yml),再启动:
mvn spring-boot:run后端服务默认地址:http://localhost:8080
进入 HNU-frontend/my-app:
npm install
npm run dev前端默认地址:http://localhost:5173
- 用户注册/登录(验证码 + 审核)
- JWT 鉴权与管理员权限控制
- 帖子发布、列表、搜索、详情
- 热搜榜(Redis 缓存)
- 评论发布、点赞、删除(逻辑删除展示)
- 管理员审核注册、禁言/解禁用户、强制删除帖子、删除评论
- 个人中心、我的帖子、发帖入口
- 如果提示 CORS:确认后端已开启跨域并已重启
- 如果帖子详情加载失败:确保 Redis 可用或使用降级逻辑
- 标题长度限制:
posts.title仅允许 4-20 字
Apache 2.0