BBS论坛概要设计文档

上传人:沈*** 文档编号:169293747 上传时间:2022-11-14 格式:DOC 页数:23 大小:520.50KB
收藏 版权申诉 举报 下载
BBS论坛概要设计文档_第1页
第1页 / 共23页
BBS论坛概要设计文档_第2页
第2页 / 共23页
BBS论坛概要设计文档_第3页
第3页 / 共23页
资源描述:

《BBS论坛概要设计文档》由会员分享,可在线阅读,更多相关《BBS论坛概要设计文档(23页珍藏版)》请在装配图网上搜索。

1、BBS论坛概要设计说明书目 录第一章 引言51.1编写目的51.2背景51.3定义61.4参考资料6第二章 总体设计(系统架构设计)72.1需求规定72.2运行环境72.3基本设计概念和处理流程82.3.5总体架构设计2.4 系统结构(系统各个组件设计)122.4 系统结构(系统各个组件设计)13第三章 系统数据结构设计193.1数据库逻辑结构设计193.2数据库物理结构设计26第一章 引言1.1编写目的本文档作为BBS的概要设计说明文档,用于与用户确定最终的目标,并成为协议文本的一部分,同时也是本系统设计人员的基础文档。1.1.1 概要设计说明书目的本概要设计说明书说明了BBS论坛系统设计的

2、整体结构。1.1.2 预期读者本系统开发人员及维护人员。1.2背景BBS论坛,或者称为社区,是电子商务网站中一种常见功能,也是互联网上一种极为常见的互动交流服务。它为上网用户提供了也各自由的讨论区。通过论坛可以向用户提供开放性的分类专题讨论区服务,同时注册的用户可以根据需要在论坛上发表文章,交流技术经验,或者提出问题并表达自己的观点。不仅如此,上网的用户还可以在论坛中看到他人发表的文章,并且能够对该文章进行评论。一般情况下,BBS按不同主题分为多个布告栏,其设立多是依据使用者的要求和喜好,但多具有信件交流、软件交流、信息发布等功能。 目前,大部分BBS由教育机构、研究机构或商业机构管理,大多有

3、自己的拨入电话号码,用户只需电脑、调制解调器和电话线就可通过电话拨号登录BBS站点。1.2.1 待开发软件系统的名称BBS论坛系统1.2.2 项目的任务提出者1.2.3 项目的任务开发者1.3定义1.3.1 本文档中涉及的专业词汇1、GB:中华人民共和国国家标准的英文缩写字母2、构件:具有某种功能的可重用的软件模版单元,表示了系统中主要的计算元素和数据存储。3、逻辑视图:描述支持系统的功能需求的视图。4、开发视图:也称模块视图,主要侧重于软件模块的组织和管理描述。1.3.2 名词说明1、BBS:Bulletin Board Service2、JSP(JavaServer Pages)JSP技术

4、使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易3、Struts只是一个MVC框架(Framework)它用于快速开发Java Web应用。Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor和我们定制的Action,也为V(View)提供了一系列定制标签(Custom Tag)。但Struts几乎没有

5、涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。1.4参考资料1、本软件项目规划依据标准为国家表准:GB856T88;2、技术参考资料(1)J2EE项目实训Hibernate框架技术(21世纪高等学校实用软件工程教育规划教材)杨少波等编著 清华大学出版社 2008 年5月(2)J2EE项目实训Spring框架技术(21世纪高等学校实用软件工程教育规划教材)杨少波等编著 清华大学出版社 2008 年5月(3)J2EE项目实训UML及设计模式(21世纪高等学校实用软件工程教育规划教材)杨少波等编著 清华大学出版社 2008 年5月(4)J2EE项目实训Struts框

6、架技术(21世纪高等学校实用软件工程教育规划教材)杨少波等编著 清华大学出版社 2008 年10月第二章 总体设计(系统架构设计)2.1需求规定2.1.1输入输出要求界面风格:要求整体界面美观,有清晰的层次感,布局简洁、合理。同时保证后台的管理页面和前台的服务页面保持风格的一致。2.1.2时间要求时间需求:在软件方面,响应时间,更新处理时间都比较快且迅速,系统响应时间不能超过20秒。 2.1.3灵活性要求灵活性:当用户需求,如操作方式,运行环境,结果精度,数据结构等其他软件接口等发生变化时,设计的软件能做出适当调整,灵活性非常大。2.2运行环境2.2.1设备1、主机类型如表2-1表2-1 主机

7、类型类别服务器标准配置CPUIntel奔腾P4 2。0GHz以上内存256MB,最好512MB以上硬盘120G以上其他无特殊要求2、网络类型:百兆高速局域网3、存贮器容量:大容量存贮器4、其他特殊设备:网络打印机,复印机2.2.2支撑软件1、操作系统: Windows 20032、数据库管理系统:MySQL 以上版本数据库3、其他支撑软件:J2SDK1.5及以上版本4、应用服务器:Tomcat 5.0以上2.3基本设计概念和处理流程2.3.1系统概述1、系统采用基于J2EE的轻量级B/S架构体系BBS网上论坛系统采用B/S架构(浏览器/服务器)模式来实现。考虑到系统应用性、安全性、可扩展性与可

8、维护性,决定采用基于J2EE的轻量级架构体系。其体系结构图如下所示: 2、为什么对本项目要应用轻量级的框架技术轻量级容器的设计目标是为了能够避免如下所有这些麻烦事情,基于以下的各个优点,我们决定在本项目中采用轻量级的框架技术。l 侵略性的API(代码依赖于EJB)l 对容器的依赖(代码不能在EJB 容器之外工作)l 只提供固定的一组功能,不具备配置能力l 启动时间长l 部署过程取决于特定的产品,无法通用2.3.2 系统架构示图1、本论坛系统的整体架构设计为Struts +Spring +hibernate架构组成Struts(承担表示层和控制层的角色)Spring(利用IoC进行各种对象的管理

9、 )Hibernate(实现数据访问和O/R Mapping)相互集成对 DAO进行管理(1)对于表示层经验表明,最好的方法是选择已存在的并已得到证明了的Web应用框架,而不是自己去设计和开发新的框架。我们拥有多个可选择的框架,如Struts,WebWork和JSF等,在本项目中,我们选择采用Struts。(2)EJB 和POJO都可以用来创建业务逻辑层如果应用是分布式的,采用具有remote接口的EJB是一个好的选择;由于本系统是一个典型的不需要远程访问的Web应用,因此选用POJO,并充分利用Spring 框架的IoC和AoP的特性,将是实现业务逻辑层的更好选择。(3)在持久层中由于需要利

10、用关系型数据库实现数据的持续化,但在应用中可以存在多种方法可用来实现: l JDBC:这是最为灵活的方法,然而,低级的JDBC难以使用,而且质量差的JDBC代码很难运转良好 l EJB Entity beans:CMP的Entity bean是一种分离数据访问代码和处理ORM的昂贵的方法,它是以应用服务器为中心的方法,即Entity bean不是将应用与某种数据库类型而是EJB容器约束在一起。 l O/R Mapping 框架:一个ORM框架采用以对象为中心的方法实现数据持续化,一个以对象为中心的应用易于开发并具有高度的可移植性-在该领域中存在几个框架可用JDO、Hibernate、TopLi

11、nk以及iBATIS 和CocoBase等。在本项目中我们选用Hibernate。2、架构示图Struts表示层(JSP和HTML)Struts控制层Spring业务处理层Hibernate数据访问层前端控制器类业务控制类业务处理基类业务接口数据操作类数据连接类持久实体类数据访问服务数据访问操作业务处理类业务实体类本系统采用了多层非分布式的构架,上图展示了系统的分层以及每一层中所采用的技术和对应的框架,并且各层将存在于同一个Web容器中。3、该形式的总体架构设计的主要特点(1)遵循Sun J2EE中两个主要的原则:“多层架构、松藕合”由于采用分层的设计方式,各个模块功能相互独立封装,层与层之间

12、关联少,保持松耦合连接,稳定性高,便于扩展和维护。(2)本项目中的每一层所采用的技术都是可替换的例如Struts可以被JSF或者Tapestry替换掉,JDO可替换Hibernate。l 在每个层中都不同程度地应用了J2EE中常用的设计模式l 使用基于POJO的轻量级架构,从而使得系统易于测试;便于移植;“开发-发布”周期短。4、各层中的组件(1)表示层由Struts JSP组件实现,利用了Struts 中的构造标签技术,在用户浏览界面利用表单构造网页的整体结构(2)控制层由Struts中的ActionServlet和 Action组件实现,并利用ActionForm封装JSP页面中的表单。将

13、页面整体作为对象处理,在相应的Action了中调用业务逻辑,完成业务功能。l 前端控制层: ActionServlet类,并且对它加以扩展。l 业务中心控制层:各个业务Action类(标准Action类和 DispatchAction类)(3)业务处理层由Spring中的IoC来管理l 业务处理基类:将各个业务功能模块中共同的部分抽象出,从而完成一些共同的功能。l 各个业务处理类:完成具体的应用功能的各个模块(4)数据访问层由Hibernate框架来提供技术支持l 数据库操作(DAO)类:完成对数据库数据的相关操作(增、删、解、查询等)。l 数据持久(PO)类:针对应用系统中的各个数据库表提供

14、对应的POJO类2.3.3各层中应用了相应的主流的J2EE框架技术1、服务器端表示层Struts框架完成如下工作l 客户端表单进入的验证;l 管理请求和响应;l 提供控制器来完成页面流转和向业务逻辑层的委托;l 返回到客户端页面显示。其它:标签技术、MVC、成熟技术、ActionForm技术等2、业务逻辑层Spring框架完成如下工作l 为服务器段表示层提供松散的耦合;l 处理真实的企业级应用;l 事务管理的选择;l 协调各种业务逻辑对象之间的依赖关系;l 为持久层和业务逻辑层之间提供松散耦合;l 实现持久层的业务逻辑。其它:l 解藕(类与类、系统本身脱离容器) l AOP(统一地解决系统中一

15、些“切面”-技术性的问题)l IoC(对象的管理由容器完成) l POJO(普通JavaBean)-不继承框架中某个类l 容器服务(事务、数据库连接池)-Spring中已经提供了l 包装其它的框架(简化)3、持久层Hibernate框架完成如下工作l 对数据库进行查询,得到持久化对象PO;l 对数据库进行添加、删除、修改的动作并以PO来进行。域模型层VO完成如下工作:为各层之间数据交互服务,同时也在持久层部分可以描述一个实体,并与PO进行转换。其它:l 屏蔽数据库的差异性-数据库方言l 以面向对象的数据库访问(减少了SQL)l 各种对象关系O/R Mapping实现l 技术成熟-企业开发l 统

16、一的事务管理实现l 提供各种缓存技术以提高速度(性能)2.3.模型组件控制调度层表示层中的请求业务处理层表示层中的业务成功显示数据访问层表示层中的业务失败显示4系统基于MVC设计2.3.采用Spring中的IoC来管理对象index.jspuserRegister.jspUserLogin.jspMessageindex.jspUserLoginFormMessageFormClassUserRegisterAction基于Hibernate技术的数据访问组件(DAO)MessageActionClassUserLoginActionSearchBBS.jspUserRegisterFormB

17、BSActionServlet自定义的标签用户BBSSearchActionBBSSearchForm ormClass视图助手组件UserException业务基类和面向业务接口编程各种具体的业务组件各种具体的业务组件各种具体的业务组件各种具体的业务组件Struts中的各种标签库中的标签Faade模式Template模式DAO模式View Helper模式复合视图模式DTO模式基于DBCP的数据库连接池MS SQLServer2000数据库5总体架构设计2.4 系统结构(系统各个组件设计)2.4.1体系结构包图(架构包图)2.4.2组件设计图(系统中的各个组件)2.4.3类图与接口设计(各个

18、组件中的相关的类和接口)1、数据访问层组件采用一个DAO组件实现数据访问操作分别采用不同的DAO组件实现数据访问操作2、业务处理层组件3、控制层组件4、表示层组件2.4.4系统总体类图(以体现类之间的关系)第三章 系统数据结构设计3.1数据库逻辑结构设计3.1.1实体关系(Entity-Relationship)图1、逻辑图(Logic diagram)2、物理图(Physical diagram)3.1.2数据库表的逻辑设计1、BBS信息数据库表结构及数据字典定义表注意:对数据库表中的结构设计,最后应该给出下面的对每个字段的详细说明。字 段 名标 识 符类型及长度有无空值主键BBS的ID标识

19、idint(自动编号)无PKBBS作者authorvchar无BBS标题titlevchar无字段名标识符类型及长度是否允许为空主键主题IDbbsIDint 4Not nullPK主题作者authornvarchar(20)Not null主题标题bbsTitlenvarchar(20)Not null回复数replyint 4Not null发表时间createTimenvarchar(20)Not null最后回复时间lastUpdateTimenvarchar(20)Not null内容contentntext(16)Not null点击数hitsint 4Not nullBBS表情图片

20、iconIDint 4所属类型IDbbsTypeIDint 4Not null所属版块IDboardIDint 4Not null用户IDuserIDint 4Not null是否为精华帖bbsEliteint 4是否置顶主题bbsTopint 4是否禁止回复bbsLockint 4所属类型:原创、转贴、问题、灌水、建议、种子、资料、下载2、BBS回复信息表结构及数据字典定义表字段名标识符类型及长度是否允许为空主键回复帖IDreplyIDint 4Not nullPK所属主题IDbbsIDint 4Not null回复作者replyAuthornvarchar(20)Not null回复时间r

21、eplyTimenvarchar(20)Not null回复表情IDreplyIconIDint 4回复标题replyTitlenvarchar(50)Not null回复内容replyContentntextNot null3、BBS分类标题数据库表结构及数据字典定义表字段名标识符类型及长度是否允许为空主键版块IDboardIDint 4Not nullPK版块题目boardTitlenvarchar(20)Not null版块内容boardContentnvarchar(255)Not null版主leaderNamenvarchar(20)副版主secLeaderNamenvarchar

22、(20)版块主题总和allTopicNumberint 4版块当天帖子总和todayTopicNumberint 4最后回复的时间lastReplyTimenvarchar(20)Not null最后回复的作者lastReplyAuthornvarchar(20)Not null4、用户信息数据库表结构及数据字典定义表字段名标识符类型及长度是否允许为空主键用户IDuserIDint 4否PK用户名usernamenvarchar(20)否用户性别(男0,女1)userSexsmallint(2)否用户密码userPassWordnvarchar(16)否用户EmailuserEmailnvar

23、char(50)否用户取回密码问题userPassAsknvarchar(30)否用户取回密码答案userPassAnswernvarchar(30)否用户角色userTypetinyint(1)否用户生日userBirthdaynvarchar(10)用户地址userComeFromnvarchar(50)注册时间userRegisternvarchar(20)否用户头像userSignnvarchar(255)QQ号userQQCodenvarchar(15)用户签名档userIdiographntext最后登录时间userLastTimenvarchar(20)否用户发表的主题数总和us

24、erTopicCountint 4用户回复的主题数总和userReTopicCountint 4用户被删的帖子总和userDelTopicCountint 4用户被推荐精华帖总和userEliteTopicCountint 4用户登录次数userLoadDegreeint 4是否被禁言userLockint 45、管理员的数据库表及数据字典定义表6、用户联系数据库表结构及数据字典定义表7、用户角色数据库表结构及数据字典定义表字段名标识符类型及长度是否允许空主键角色IDroleIDint 4Not nullPK角色名称roleNamenvarchar(20)Not null用户IDuserIDint 4Not null下面为说明在Access中创建出各个数据库表之间的E-R图的实现过程可以在Access中创建除各个数据库表之间的E-R图,首先选择“工具”-“关系”此时,将产生除“关系”菜单项目,然后选择其中的“编辑关系”菜单项目。在项目的对话框中选中我们所需要创建关系的各个数据库表最后点击“添加”按钮,将出现下面的图示选择“关系”菜单中的“编辑关系” 子菜单在对话框中选择“创建”按钮以创建新的关系分别选择主动表和被动表以及它们之间的关联字段(主-外键)最后点击“创建”按钮,将产生除下面的E-R图3.2数据库物理结构设计

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!