连载小说大学生课设 需求&架构

需求

设计一个小说连载网站,用户分为读者和管理员,不同用户权限不同、功能不同。

  • 完成读者功能模块:读者注册与登陆、小说章节查询、小说状态情况添加、读者留言。
  • 完成管理员功能模块:作者注册与登陆、小说章节查询、小说更新模块、读者信息管理。
  • 设计主要数据库表单:
    • 小说信息表单,含小说编号、小说名称、作者编号、所属栏目、书评、小说状态、小说章节、小说页数、投票数量等字段。
    • 作者信息表单,含作者编号、姓名、个人简介、作者等级、所发表小说编号、是否转录、留言编号等字段。
    • 小说评论信息表单,含留言编号、留言内容、评论管理类别、每千字收费标准、排行榜、小说状态、小说类别等字段。

【作者身份:使用字段标记,先以读者身份完成开发,后续根据字段进行迭代开发】

开发指南

一、功能的共性与独立性分析

功能类型 共性功能 读者独立功能 管理员独立功能
功能项 注册与登录、小说章节查询 小说状态情况添加、读者留言 小说更新模块、读者信息管理

二、架构设计

采用前后端分离架构,结合技术栈(前端 Vue + Element UI、后端 Node.js、数据库 MySQL),分层设计如下:

1. 前端层(Vue + Element UI)
  • 组件化拆分

    • 公共组件:导航栏(区分读者 / 管理员入口)、分页组件、搜索组件、弹框组件(登录、留言、提示等)。

    • 读者专属页面:

      • 注册 / 登录页:表单验证、权限控制。
      • 小说章节查询页:小说列表展示、章节筛选 / 搜索、章节内容渲染。
      • 小说状态添加页:状态选择表单(关联小说)。
      • 读者留言页:留言表单、留言列表(含评论管理类别筛选)。
    • 管理员专属页面:

      • 作者注册 / 登录页:作者信息表单、权限校验。
      • 小说更新页:小说信息编辑(章节、状态等)、关联作者。
      • 读者信息管理页:读者列表(查询、筛选、编辑 / 删除)。
  • 路由与权限控制

    • 利用 Vue Router 的导航守卫,区分读者、管理员路由权限(未登录则跳转登录页)。
2. 后端层(Node.js + 框架,如 Koa)
  • 接口分层

    • 路由层:区分读者路由(/user/*)、管理员路由(/admin/*),通过中间件做权限校验(如 JWT 令牌验证)。
    • 控制器层:处理前端请求,调用服务层逻辑,返回统一格式的响应(如{ code, data, msg })。
    • 服务层:封装业务逻辑(如注册校验、小说查询逻辑、留言提交规则等)。
    • 数据访问层(DAO):封装 MySQL 数据库操作(增删改查),通过 ORM 工具(如 Sequelize)映射数据库表与模型。
3. 数据库层(MySQL)

基于整理后的数据库表,重点关注表间关联

  • 小说信息表(novel)与作者信息表(author):通过author-id外键关联。
  • 作者信息表(author)与小说评论信息表(comment):通过message-id外键关联。
  • 小说评论信息表(comment)与小说信息表(novel):可补充novel-id外键,实现 "评论 - 小说" 关联。

三、模块设计细节

1. 读者模块
  • 注册与登录

    • 前端:表单验证(用户名唯一性、密码强度),登录后存储 Token(本地存储)。
    • 后端:用户信息入库(读者表),生成 JWT 令牌;登录时校验账号密码,返回 Token。
  • 小说章节查询

    • 前端:小说列表(含分类、状态筛选),点击小说进入章节列表,支持章节搜索 / 排序。
    • 后端:提供小说列表查询接口(可按栏目、状态筛选)、章节详情查询接口。
  • 小说状态情况添加

    • 前端:状态选择表单(关联小说),提交后提示操作结果。
    • 后端:校验读者权限,更新小说表的status字段。
  • 读者留言

    • 前端:留言表单(内容、关联小说),留言列表展示(含评论管理类别)。
    • 后端:留言入库(评论信息表),关联读者 ID、小说 ID。
2. 管理员模块
  • 作者注册与登录

    • 前端:作者信息表单(含等级、是否转录等),登录校验。
    • 后端:作者信息入库(作者表),生成管理端 Token;登录时校验权限。
  • 小说章节查询

    • 与读者模块共用后端查询接口,但前端可展示更多管理维度(如未审核章节、作者关联等)。
  • 小说更新模块

    • 前端:小说信息编辑表单(章节数、页数、状态等),提交后同步更新。
    • 后端:校验管理员权限,更新小说表字段。
  • 读者信息管理

    • 前端:读者列表(可筛选、分页),支持编辑 / 禁用读者账号。
    • 后端:提供读者列表查询、信息更新、状态变更接口。
相关推荐
2501_944875514 分钟前
Go后端工程师
开发语言·后端·golang
foundbug9997 分钟前
Modbus协议C语言实现(易于移植版本)
java·c语言·前端
该用户已不存在7 分钟前
没有这7款工具,难怪你的Python这么慢
后端·python
Luna-player8 分钟前
在前端中list.map的用法
前端·数据结构·list
用户479492835691512 分钟前
面试官问 React Fiber,这一篇文章就够了
前端·javascript·react.js
肌肉娃子24 分钟前
seatunnel-mysqlcdc同步clickhouse方案
后端
LYFlied24 分钟前
【一句话概述】Webpack、Vite、Rollup 核心区别
前端·webpack·node.js·rollup·vite·打包·一句话概述
阿拉斯攀登30 分钟前
SkyWalking使用:Spring Boot场景
spring boot·后端·skywalking
reddingtons36 分钟前
PS 参考图像:线稿上色太慢?AI 3秒“喂”出精细厚涂
前端·人工智能·游戏·ui·aigc·游戏策划·游戏美术
一水鉴天37 分钟前
整体设计 定稿 之23+ dashboard.html 增加三层次动态记录体系仪表盘 之2 程序 (Q199 之2) (codebuddy)
开发语言·前端·javascript