一、项目概述
网络文学平台不仅需要完成作品展示,还要处理作者发布、读者互动、活动报名、内容审核和后台运营等业务。本文介绍一个基于 Spring Boot 与 Vue 开发的网络文学交流分享平台,梳理项目的技术架构、功能模块、数据库设计与关键实现思路。
系统采用前后端分离架构,包含用户前台和后台管理端两套 Vue 应用。后端使用 Spring Boot 提供 REST 接口,以 MySQL 保存业务数据,并通过 MyBatis-Plus 完成数据访问。项目围绕"作品创作与交流"展开,将作品、作者、评论、点赞、收藏、文学活动和活动报名串联起来。
二、技术架构
- 后端:Spring Boot 2.2.5、MyBatis-Plus、Druid
- 前端:Vue、Vue Router、Vuex、Element UI、Axios
- 数据:MySQL 8、Redis
- 其他:Lombok、Fastjson、Apache POI
后端服务默认运行在 5000 端口,统一使用 /api 作为上下文路径。前台和管理端分别维护路由、页面与状态管理。
三、普通用户与作品交流
用户可以注册登录、浏览作品和活动,并发布和维护个人作品。作品信息包含名称、类型、风格、封面、作者、正文及审核状态。作品审核通过后才在前台展示,读者可在详情页评论、点赞和收藏,作者可在个人中心查看互动反馈。
作品类型和作品风格采用独立数据表,减少重复文本并方便后台统一维护。修改作品时,后端还应验证记录是否属于当前用户,避免通过篡改编号操作他人内容。
四、文学活动与报名
平台支持发布征文、创作比赛和交流活动。用户可以查看活动名称、类型、时间、地点和详细内容,并完成在线报名。服务端应校验活动是否有效、用户是否登录、是否重复报名以及报名截止时间,不能只依赖前端按钮限制。
五、后台管理
管理端负责普通用户、作品信息、作品类型、作品风格、活动信息、活动类型、报名信息、评论、敏感词、轮播图和公告等模块。后台页面提供分页查询、新增、修改、查看和删除能力,并通过用户组与权限表控制访问范围。
六、数据库设计
主要业务表包括 regular_users、work_information、type_of_work、work_style、event_information、activity_type、registration_information 和 sensitive_vocabulary。
通用支撑表包括 user、user_group、auth、comment、praise、collect、hits、notice、slides、upload 和 access_token,分别支持账户权限、评论点赞收藏、访问统计、公告轮播及登录令牌等能力。
作品表适合对作者编号、作品类型、审核状态和创建时间建立索引。点赞和收藏表可以对"用户编号 + 来源表 + 来源记录编号"建立联合唯一约束;活动报名表可以对"活动编号 + 用户编号"建立联合唯一约束,从数据库层防止重复数据。
七、后端分层设计
后端按照 Controller、Service、DAO、Entity 和 Mapper XML 分层。Controller 接收请求并校验参数,Service 组织业务逻辑,DAO 与 Mapper 完成数据访问,Entity 映射数据库实体。作品、活动、报名和敏感词等模块都沿用这套结构,便于快速定位和扩展代码。
Controller → Service → DAO/Mapper → MySQL
八、权限与内容审核
权限控制应同时覆盖页面和接口。前端菜单决定用户能看到什么,后端鉴权决定用户真正能执行什么。即使页面隐藏了删除按钮,接口也必须校验角色和数据归属。
系统提供敏感词维护模块,可在作品发布和评论提交前统一检测。词库较小时可直接匹配,数据量较大时可采用 Trie 树或 DFA 算法。命中后可以拒绝提交、替换内容或进入人工审核。
九、Redis 使用建议
Redis 可缓存热门作品、首页轮播图和访问量等读取频繁、更新较少的数据。查询时优先读取缓存,未命中再访问 MySQL;后台更新后主动删除相关缓存并设置合理过期时间。点赞、收藏和报名等强一致性记录仍应以数据库为准。
十、项目运行
- 创建 MySQL 数据库 project31754 并导入 SQL;
- 检查 application.yml 中的 MySQL 与 Redis 配置;
- 使用 mvn spring-boot:run 启动后端;
- 在前台和后台目录执行 npm install;
- 通过 npm run serve 启动两套 Vue 页面;
- 使用普通用户和管理员账号测试完整流程。
生产部署时应使用环境变量或外部配置注入数据库密码,并限制上传文件的格式、大小与访问权限。
十一、测试重点
- 注册、登录和退出状态是否正确;
- 普通用户是否只能维护自己的作品;
- 评论、点赞、收藏和报名能否防止重复提交;
- 作品类型与风格筛选是否准确;
- 活动是否校验截止时间;
- 敏感词检测是否覆盖作品与评论;
- 管理接口是否具备服务端鉴权;
- 缓存更新后前台是否读取到最新数据。
十二、总结
该系统将作品管理、互动交流和文学活动整合到一个平台中,覆盖前后端分离、数据库设计、权限控制、评论点赞收藏、活动报名及内容治理等真实场景,适合作为 Spring Boot + Vue 类毕业设计案例。
后续可增加作品章节管理、作者关注、站内消息、个性化推荐、审核工作流和阅读数据分析,并进一步完善登录安全、数据权限和缓存一致性。
十三、系统界面展示
1. 平台首页
2. 作品发布页面
3. 活动详情页面
4. 后台用户管理页面
5. 后台作品管理页面



