1、1Java 程序设计课程结业报告设计题目:BBS 论坛系统设计与实现 UML 设计、主界面模块、帖模块设计与实现 学 院: 班 级: 学 号: 姓 名: 指导教师: 设计时间: 2目录摘要 .41.引言 .51.1 编写目的 .51.2 产品背景 .52.BBS 论坛介绍 .52.1 产品特征 .52.2 用户特征 .62.3 产品功能 .72.4 一般性限制 .82.4.1 运行环境 .82.4.2 设计和实现约束 .83 需求分析 .93.1 功能需求 .93.1.1 关于用户的权限功能的需求 .93.1.2 数据流图与数据加工 .103.2 数据需求 .113.2.1 概念结构设计 .1
2、13.2.2 逻辑设计 .123.3.1 服务系统的菜单设计 .1333.4. 开发工具的选择 .133.5 UML 设计(个人模块) .153.5.1 用例图: .153.5.2 序列图 .153.5.3 状态图 .163.5.4 数据库概要 .174 接口设计 .184.1 用户接口 .184.2 结构接口 .185 总体设计 .195.1 结构框架介绍 .195.2 整个系统操作介绍 .195.3 数据库整体设计 .205.4 论坛所需绝大部分功能进行划分 .216 运行设计 .236.1 运行模块组合 .236.2 运行控制 .236.2.1. 注册以及会员登陆 .236.2.2. 修
3、改会员注册信息和忘记密码 .246.2.3. 浏览帖子 .256.2.4. 发表帖子 (个人模块) .256.2.5. 管理员删除帖子 .286.2.6 主界面设计(个人模块) .296.3 运行时间 .327 心得体会结论 .3248 参考文献 .32摘要现今是网络时代,信息的交流不再单单是面对面的交流还增加了虚拟网络的交流,由于其方便快捷及其对地域时间等因素的的要求的淡化,Internet 上的交流早已占据着一个极其重要的地位。人们可以通过在互联网上收到最新的消息,也可以通过互联网进行信息的交流。而论坛就是大家进行信息交流的其中一个渠道。 论坛( BBS)是一种在 Internet 网上开
4、放的信息服务系统,通过论坛用户可以方便的实现信息的交换和文件的共享。本系统主要完成了基于 JSP 技术的校内论坛的设计和实现,主要实现了客户端和服务器端的动态交互。该系统主要包含:用户信息管理模块;论坛内容实现及排版模块;用户权限所对应的功能实现模块;论坛文章发布/回复模块,四大模块。本论文详细描述了论坛的结构、功能以及具体设计过程。系统采用了 JSP 技术以及 JavaBeans 组件技术和 JDBC 技术实现。 关键词:JSP,论坛系统, SQL server, Java。 51.引言1.1 编写目的本项目为 BBS 论坛系统,书写此文档是为了确定用户对本系统的真正需求,确定一份完整、准确
5、、清晰、具体的系统要求及设计方案,从而有效地帮助开发人员实现此系统的各个模块和各项功能,也让用户对此系统有更全面的了解。此文档包含了用户对系统的具体要求,系统的功能需求等;可作为用户需求的确定书和总体设计的依据,也是验证和维护系统的依据。1.2 产品背景随着网络的高速发展,网络资源已经走进了广大人民的生活,网络传播消息已经被越来越多的人们所接受。为了更多的实现网络信息的传播,达到新闻的及时性与新鲜性。所以我们迫切需要设计这样一个 BBS 论坛系统。本论坛不是以营利为目的,我们为会员和游客提供了浏览新闻帖子的权限、并且对于会员拥有发表帖子和对其他会员所发表帖子进行评论的权限。为了使所发表的内容积
6、极、健康、真实,我们设置了一个管理员的登录模式。管理员拥有对会员信息进行删除,对会员所发表的文章进行审核的权限。也有对其评论和文章进行删除的权利。2.BBS 论坛介绍2.1 产品特征特性 1. 用户可自定义用户名、密码、密码提示问题和答案、个人头衔、门派、签名、自我简介等信息,可以自定义个性头像和登陆风格;6特性 2. 可以发新信息(新帖) 、回复(跟随)等,可以发起投票统计并自动统计调查结果,可提供图形化显示功能;特性 3. 用户可以在论坛内部相互发送短消息,系统自动提示未读短消息;特性 4. 管理员可以发布各类论坛公告,最新公告以滚动条的形式出现在论坛最上方;特性 5. 管理员可自由设定分
7、论坛的主题,可同时设置多个论坛,每个分论坛都具有定时开通功能。可为每个分论坛配置版主(分论坛管理员) ;特性 6. 所有的网友发言信息必须经过管理员审核通过才能发布,提供“控制开关”,即如果审核通过,点“ 通过”按钮即可,需要删除的点“删除” 按钮即可;特性 7. 可以根据发帖的主题、内容关键字、作者、分论坛等信息搜索论坛内已有的文章;特性 8. 管理员可控制论坛的开通和关闭,可设定关闭后不可再发帖或不可再访问;特性 9. 系统可自动检测在线用户 IP 地址、操作系统、浏览器版本并可显示所有在线用户;特性 10. 根据注册用户填写的注册信息,在用户生日到来时自动提醒特性 11. 自动统计在线用
8、户数并列表显示在线用户;自动统计用户的发帖数、跟帖数(回复数) 、访问次数和点击量。2.2 用户特征用户类 说明用户 用户是面向所有的网友,他们希望有用一个公众就关心的重大问题和疑难问题交流的平台。网友可以从网吧,办公司,家里上网来论坛交流讨论。用户希望能在论坛注册,发帖,发送短消息,论坛检索等功能。7一般管理员 管理员在论坛中主要负责发布各种论坛公告,设定安全过滤,审核网友发言信息,定时开通论坛2.3 产品功能“注册”用例:用户可自定义个人信息;“登陆”用力:会员可以登陆系统;“发帖回复”用例:会员可以发新信息,回复等,可以发起投票统计并自动统计调查结果,可提供图形化显示功能;“发送短消息”
9、用例:用户可以在论坛内部相互发送短消息,系统自动提示未读短消息;“内容安全过滤”用例:系统对网友的发言进行过滤,系统对报警的信息自动添加特别记号重点标明;“论坛检索”用例:用户可以搜索论坛内已有的文章;“用户检索”用例:系统可自动检测在线用户 IP 地址、操作系统、浏览器版本并可显示所有在线用户;“生日提醒”用例:系统在用户生日到来时自动提醒;“发布公告”用例:管理员可以发布各类论坛公“设定分论坛”用例:管理员可自由设定分论坛的主题,可同时设置多个论坛每个分论坛都具有定时开通功能。可为每个分论坛配置版主;“审查信息”用例:所有的网友发言信息必须经过管理员审核通过才能发布;“定时开通论坛”用例:
10、管理员可控制论坛的开通和关闭,可设定关闭后不可再发帖或不可再访问;“论坛在线统计”用例:自动统计在线用户数并列表显示在线用户;自动统计用户的发帖数、跟帖数、访问次数和点击量。82.4 一般性限制2.4.1 运行环境系统应该运行在 Windows XP 或以上版本的平台上支持 Microsoft IE 5.0 和 6.0 版本的浏览器服务器采用 Windows NT 2003 操作系统2.4.2 设计和实现约束软件开发语言为 JAVA 数据库系统为 SQL Server 2003图 2.1 产品功能示意图93 需求分析3.1 功能需求BBS 论坛系统大致可以分为两个组成部分:面向管理员的论坛管理
11、系统和面向所有用户的论坛服务系统。如前所述,在我们的系统中,BBS 一般是以 web方式登录。因而,无论是管理员方还是用户方都不必安装该系统。但是,为了解释网页代码中的服务器端脚本语言代码,服务器端必须安装相应的 web 服务器(比如 Apache,IIS) ,脚本代码解释引擎(比如 Apache Tomcat(推荐))和数据库服务器(如 SQL Server) 。所有用户都通过密码验证后登录论坛管理系统,进行相应的后台管理如用户管理,讨论区管理和文章管理。3.1.1 关于用户的权限功能的需求论坛系统应该能够在用户通过帐户密码验证登录论坛服务系统后,判断用户级别识别四类不同权限级别的用户。第一
12、类是游客,拥有浏览文章,查询注册用户个体最基本信息的权限;第二类是一般用户,能够在论坛讨论区发表/浏览/回复主题,管理个人信息等;第三类是管理员,能够对相应主题进行删除/精华,对回复的帖子进行删除,封锁 ID 以及解除对一般用户的封锁;第四类是主管理员,拥有最高权限,能够在管理员的权限的基础上增加:管理员权限更改。详细的用户权限起始流程如图 3.110图 3.1 论坛登录各类流程图说明:1所有服务请求都有需要验证用户权限的级别,即 x(usergrade)的值(0,1,2,3(游客为 3) ) ;比如:回复主题的权限是 x=0,1 或者 2。比如:精华文章的权限要求为 x=0 或 2。2管理员增加的是一个管理模块。3.1.2 数据流图与数据加工下面以“找回密码/更改密码,发表/置顶主题,删除帖子,赋予/取消用户管理员权限, ”等请求为例,作出具体的数据流图,以示说明: