4系统概要设计
 4.1概述
 本系统采用B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式,是一个适用于Internet环境下的模型结构。只要用户能连上Internet,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:
 
图4-1系统工作原理图
 4.2系统结构
 本系统是基于B/S架构的网站系统,设计的管理员功能结构图如下图所示:
 
图4-1管理员功能结构图
本系统是基于B/S架构的网站系统,设计的老师功能结构图如下图所示:
 
图4-2老师功能结构图
 本系统是基于B/S架构的网站系统,设计的用户功能结构图如下图所示:
 
图4-3 用户功能结构图
4.3.数据库设计
 4.3.1数据库实体
 概念设计的目标是设计出反映某个组织部门信息需求的数据库系统概念模式,数据库系统的概念模式独立于数据库系统的逻辑结构、独立于数据库管理系统(DBMS)、独立于计算机系统。
 概念模式的设计方法是在需求分析的基础上,用概念数据模型(例如E-R模型)表示数据及数据之间的相互联系,设计出反映用户信息需求和处理需求的数据库系统概念模式。概念设计的目标是准确描述应用领域的信息模式,支持用户的各种应用,这样既容易转换为数据库系统逻辑模式,又容易为用户理解。数据库系统概念模式是面向现实世界的数据模型,不能直接用于数据库系统的实现。在此阶段,用户可以参与和评价数据库系统的设计,从而有利于保证数据库系统的设计与用户的需求相吻合。在概念模式的设计中,E-R模型法是最常见的设计方法。本系统的E-R图如下图所示:
 (1)学生问题信息的实体属性图如下:
 
图4.12 学生问题信息实体属性图
 (2)老师信息实体属性图如图4.13所示:
 
图4.13 老师信息实体属性图
 (3)科目类型信息实体属性图如图4.14所示:
 
图4.14 科目类型信息实体属性图
 4.3.2数据库设计表
 课程答疑系统需要后台数据库,下面介绍数据库中的各个表的详细信息:
表4.1 老师回答评论表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 refid bigint(20) 否 关联表id
 userid bigint(20) 否 用户id
 nickname varchar(200) 是 NULL 用户名
 content longtext 否 评论内容
 reply longtext 是 NULL 回复内容
 表4.2 老师信息评论表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 refid bigint(20) 否 关联表id
 userid bigint(20) 否 用户id
 nickname varchar(200) 是 NULL 用户名
 content longtext 否 评论内容
 reply longtext 是 NULL 回复内容
 表4.3 学生问题评论表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 refid bigint(20) 否 关联表id
 userid bigint(20) 否 用户id
 nickname varchar(200) 是 NULL 用户名
 content longtext 否 评论内容
 reply longtext 是 NULL 回复内容
 表4.4 交流区
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 title varchar(200) 是 NULL 帖子标题
 content longtext 否 帖子内容
 parentid bigint(20) 是 NULL 父节点id
 userid bigint(20) 否 用户id
 username varchar(200) 是 NULL 用户名
 isdone varchar(200) 是 NULL 状态
 表4.5 关注列表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 laoshizhanghao varchar(200) 是 NULL 老师账号
 laoshixingming varchar(200) 是 NULL 老师姓名
 xingbie varchar(200) 是 NULL 性别
 shoujihaoma varchar(200) 是 NULL 手机号码
 touxiang varchar(200) 是 NULL 头像
 xueshengzhanghao varchar(200) 是 NULL 学生账号
 xueshengxingming varchar(200) 是 NULL 学生姓名
 表4.6 科目类型
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 kemu varchar(200) 是 NULL 科目
 jianyao longtext 是 NULL 简要
 表4.7 老师
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 laoshizhanghao varchar(200) 否 老师账号
 mima varchar(200) 否 密码
 laoshixingming varchar(200) 是 NULL 老师姓名
 xingbie varchar(200) 是 NULL 性别
 shoujihaoma varchar(200) 是 NULL 手机号码
 touxiang varchar(200) 是 NULL 头像
 表4.8 老师回答
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 wenti varchar(200) 是 NULL 问题
 fengmian varchar(200) 是 NULL 封面
 kemuleixing varchar(200) 是 NULL 科目类型
 wentimiaoshu varchar(200) 是 NULL 问题描述
 xueshengzhanghao varchar(200) 是 NULL 学生账号
 xueshengxingming varchar(200) 是 NULL 学生姓名
 laoshizhanghao varchar(200) 否 老师账号
 laoshixingming varchar(200) 否 老师姓名
 wentijieda longtext 否 问题解答
 beizhu varchar(200) 是 NULL 备注
 thumbsupnum int(11) 是 0 赞
 crazilynum int(11) 是 0 踩
 clicknum int(11) 是 0 点击次数
 表4.9 老师信息
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 laoshizhanghao varchar(200) 是 NULL 老师账号
 laoshixingming varchar(200) 否 老师姓名
 xingbie varchar(200) 否 性别
 shoujihaoma varchar(200) 是 NULL 手机号码
 touxiang varchar(200) 是 NULL 头像
 ziwojieshao longtext 否 自我介绍
 thumbsupnum int(11) 是 0 赞
 crazilynum int(11) 是 0 踩
 clicktime datetime 是 NULL 最近点击时间
 clicknum int(11) 是 0 点击次数
 表4.10 收藏表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 userid bigint(20) 否 用户id
 refid bigint(20) 是 NULL 收藏id
 tablename varchar(200) 是 NULL 表名
 name varchar(200) 否 收藏名称
 picture varchar(200) 否 收藏图片
 表4.11 管理员表
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 username varchar(100) 否 用户名
 password varchar(100) 否 密码
 role varchar(100) 是 管理员 角色
 addtime timestamp 否 CURRENT_TIMESTAMP 新增时间
 表4.12 学生
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 xueshengzhanghao varchar(200) 否 学生账号
 mima varchar(200) 否 密码
 xueshengxingming varchar(200) 是 NULL 学生姓名
 xingbie varchar(200) 是 NULL 性别
 shoujihaoma varchar(200) 是 NULL 手机号码
 touxiang varchar(200) 是 NULL 头像
 表4.13 学生问题
 字段 类型 空 默认 注释
 id (主键) bigint(20) 否 主键
 addtime timestamp 否 CURRENT_TIMESTAMP 创建时间
 wenti varchar(200) 否 问题
 fengmian varchar(200) 是 NULL 封面
 kemuleixing varchar(200) 否 科目类型
 wentimiaoshu longtext 否 问题描述
 fabushijian datetime 是 NULL 发布时间
 xueshengzhanghao varchar(200) 是 NULL 学生账号
 xueshengxingming varchar(200) 是 NULL 学生姓名
 thumbsupnum int(11) 是 0 赞
 crazilynum int(11) 是 0 踩
 clicktime datetime 是 NULL 最近点击时间
 clicknum int(11) 是 0 点击次数