基于JSP+MySQL实现的校园bbs论坛

校园社团论坛

1.1 编写目的

  • 本文档是校园论坛需求调研报告,供需求分析人员进行项目需求分析时使用;
  • 本文档可以作为项目验收标准之一;
  • 本文档可以作为软件维护的参考资料;

1.2 背景说明

开发软件名称:校园社团论坛

项目任务提出者:由小组所有成员共同讨论而提出

目标用户:大学生

1.3 系统总体目标

本项目主要目标是搭建一个基于 Web 的校园 bbs 论坛,为高校社团之间的交流提供一个平台,通过这个平台,大学生可以轻松找到自己喜欢的社团组织,不同学校之间的社团也可以通过这个 bbs 促进交流。

同时,本项目结束时,所有开发小组成员都应该能收获 Web 开发经验,了解项目开发的流程。

1.4 数据库逻辑结构设计

1.4.1 逻辑结构设计

E-R 图中有实体:用户,用户信息,账号邮箱服务器,版块,版块分类,主题帖,主题帖分类,回复,系统管理员。

以下对实体进行分解:

  • 用户(用户名,密码)
  • 用户信息(用户名,昵称,头像路径,邮箱账号名,邮箱服务器)
  • 邮箱服务器(ID,邮箱域名)
  • 版块(版块名,图标路径,版块描述信息, 类型 ID)
  • 版块分类(类型 ID,类型名)
  • 主题帖(帖子 ID,标题,内容,发表时间,最后回复时间,用户名,版块名,类型 ID)
  • 主题帖分类(类型 ID,标题颜色,类型名)
  • 回复(回复 ID,内容,回复时间,帖子 ID, 用户名)
  • 系统管理员(管理员账号名,密码)

1.4.2 物理结构设计

bbs_user 表

|----------|-------------|---------|
| 字段 | 数据类型 | 说明 |
| userName | varchar(32) | 用户名(主键) |
| passwd | varchar(64) | 密码 |

user_info 表

|---------------|-------------|----------------------|
| 字段 | 数据类型 | 说明 |
| userName | varchar(32) | 用户名(主键) (bbs_user外键) |
| nickName | varchar(32) | 昵称 |
| head | varchar(64) | 头像路径 |
| emailAccount | varchar(64) | 邮箱 |
| emailServerId | Int(11) | 邮箱所属的邮件服务器,外键 |

club 表

|--------------|--------------|-------------------|
| 字段 | 数据类型 | 说明 |
| clubName | varchar(32) | 板块名(主键) |
| clubIcon | varchar(64) | 图标 |
| clubDescribe | varchar(256) | 版块描述 |
| clubTypeId | int(11) | 帖子类型(club_type外键) |

club_admin 表

|----------|-------------|----------------------|
| 字段 | 数据类型 | 说明 |
| userName | varchar(32) | 用户名(主键) (bbs_user外键) |
| clubName | varchar(32) | 版块名(主键) (club外键) |

post 表

|-------------|---------------|---------------------|
| 字段 | 数据类型 | 说明 |
| postId | int(11) | 帖子ID(主键) |
| postTitle | varchar(80) | 帖子标题 |
| postContent | varchar(2048) | 帖子内容 |
| postTime | timestamp | 发帖时间 |
| lastTime | timestamp | 最后回复的时间 |
| userName | varchar(32) | 用户名(bbs_user外键) |
| clubName | varchar(32) | 版块名(club外键) |
| postTypeId | int(11) | 帖子类型id(post_type外键) |

reply 表

|--------------|--------------|-----------------|
| 字段 | 数据类型 | 说明 |
| replyId | int(11) | 回复id(主键) |
| replyContent | varchar(512) | 回复内容 |
| replyTime | timestamp | 回复时间 |
| postId | int(11) | 帖子id(post外键) |
| userName | varchar(32) | 用户名(bbs_user外键) |

club_type 表

|------------|-------------|------------|
| 字段 | 数据类型 | 说明 |
| clubTypeId | int(11) | 板块类型id(主键) |
| clubType | varchar(64) | 板块类型 |

post_type 表

|------------|-------------|------------|
| 字段 | 数据类型 | 说明 |
| postTypeId | int(11) | 帖子类型id(主键) |
| postType | varchar(64) | 帖子类型名 |
| color | varchar(16) | 标题颜色 |

相关推荐
小陈工1 小时前
Python安全编程实践:常见漏洞与防护措施
运维·开发语言·人工智能·python·安全·django·开源
majingming1237 小时前
FUNCTION
java·前端·javascript
zopple7 小时前
常见的 Spring 项目目录结构
java·后端·spring
是娇娇公主~7 小时前
C++ 中 std::deque 的原理?它内部是如何实现的?
开发语言·c++·stl
SuperEugene8 小时前
Axios 接口请求规范实战:请求参数 / 响应处理 / 异常兜底,避坑中后台 API 调用混乱|API 与异步请求规范篇
开发语言·前端·javascript·vue.js·前端框架·axios
stuartevil8 小时前
【MySQL】SQL菜鸟教程(一)
sql·mysql·oracle
流星白龙8 小时前
【MySQL】7.MySQL基本查询(2)
android·mysql·adb
xuxie999 小时前
N11 ARM-irq
java·开发语言
cjy0001119 小时前
springboot的 nacos 配置获取不到导致启动失败及日志不输出问题
java·spring boot·后端
mldlds9 小时前
MySQL加减间隔时间函数DATE_ADD和DATE_SUB的详解
android·数据库·mysql