信息公示板类网站的设计与实现.docx

上传人:b****6 文档编号:6988366 上传时间:2023-01-15 格式:DOCX 页数:59 大小:468.62KB
下载 相关 举报
信息公示板类网站的设计与实现.docx_第1页
第1页 / 共59页
信息公示板类网站的设计与实现.docx_第2页
第2页 / 共59页
信息公示板类网站的设计与实现.docx_第3页
第3页 / 共59页
信息公示板类网站的设计与实现.docx_第4页
第4页 / 共59页
信息公示板类网站的设计与实现.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

信息公示板类网站的设计与实现.docx

《信息公示板类网站的设计与实现.docx》由会员分享,可在线阅读,更多相关《信息公示板类网站的设计与实现.docx(59页珍藏版)》请在冰豆网上搜索。

信息公示板类网站的设计与实现.docx

信息公示板类网站的设计与实现

 

本科生毕业论文(设计)

 

 

题目:

信息公示板类网站的设计与实现

 

内容摘要

BBS网站作为信息公示板类网站最具代表性之一。

BBS全称BulletinBoardSystem(电子公告板)或者BulletinBoardService(公告板服务)。

它是一种交互性强,内容丰富而实时的互联网电子信息服务系统。

截止目前,通过BBS系统不但可随时取得各种最新的信息,还可以利用BBS系统发布信息,进行讨论,聊天等等。

同时,随着互联网的发展,BBS的发展也涵盖了我们生活中的各个方面,诸如“80后之窗论坛”、“XX论坛”等,其技术上不但有了新的发展外,在表现形式各式各样、不拘一格。

BBS在功能方面不但沿用以前的主要功能,而且还整合了短信SMS服务、个人交互、游戏等一些社区SNS元素。

本文着重描述一个BBS类网站从前期的需求分析到后期设计实现及完成的过程,重点说明BBS网站的功能模块设计、数据库表设计及实现过程,同时主要介绍了主要页面的设计、处理模块及过程说明和主要公用模块的设计及系统的配置的介绍。

通过阅读本文,会加深对BBS类网站新的认识,同时在整体功能架构设计上得到一定了解。

关键词:

BBS;网站搭建;JSP

 

引言

随着Web2.0技术的逐步成熟与完善,Web2.0正在改变并重新塑造我们周围的各项业务。

论坛社区伴随着该技术的发展,由起初的单一的电子公告板业务处理模式发展到内容丰富、形式多样的大型用户交流、思想沟通的公共平台,也是网络舆论形成的主要场所。

这使得Web技术与BBS论坛社区的关系变得越来越密不可分,在论坛社区中充分利用Web技术可以使之更能及时性、便捷的交互性,朝着多元化、人性化的方向发展:

(1)BBS将摆脱传统电子公告板的形式,社区模式的BBS盛行。

BBS提供的社区模式给用户提出更加明确更加强烈的解决方案——网络上的家。

BBS社区提供给用户的服务是全面而且非常友好的,用户在社区中可以根据自己的喜好设置不同的显示风格,根据自己的需求定制各种服务。

(2)现今的主流新闻类网站形式单一,发展缓慢。

BBS将取而代之,以社区论坛的形式发布各类新闻。

随着功能和服务的增加,BBS将成为主流,而现在主流的新闻类网站纷纷转型发展BBS。

(3)BBS将Blog的许多优点融合进来,成为分类明确的社区。

即文化社区、技术社区、情感交流类社区等等。

BBS吸取了Blog的优点,使信息分类。

未来能够吸收Blog是BBS社区最成功的一点,BBS社区的成长必然也会使Blog衰败并逐渐退出历史舞台。

利用Blog的种种优点使得信息搜索难这个长期存在的问题也会迎刃而解。

(4)过去新闻类网站的广告会大量涌向BBS社区,大量的广告费是一笔非常可观的收入,BBS社区只需要拿出少部分付给专栏作家和提供服务,以及很小一部分的管理费用就可以了。

有了大量的资金来源,BBS社区的发展会更加迅速,BBS社区的服务会更加丰富,BBS社区的内容会更加充实。

本文通过对BBS类网站的深入探索、熟悉BBS类网站的需求、设计、调试和部署流程,在设计过程中应用当下设计BBS类网站的各种技术及应用,在提高自身的技术和能力的基础上,更要达到设计出一个符合企业要求的优秀的网站的网站的目的。

 

1概述

1.1开发背景

某公司是一家以程序开发为主的民营企业,拥有自己的门户网站。

为了方便企业员工内部技术交流、客户及时反馈意见,公司决定再开发一个及时论坛,即BBS系统。

其前台应以简单的操作和强大的功能为用户提供方便的信息交流方式,同时后台应为网站管理员提供便捷的主题、回复、用户等信息管理功能。

整个论坛要求使用Struts框架设计实现,它必须具有友好的运行界面、方便的功能操作,运行稳定可靠、易于维护、便于移植、无平台限制性特点。

同时系统还要求具有相应的基础设施和制度来增加网站的吸引力,还要考虑到如何抵御外来攻击等问题。

1.2项目开发过程

本文通过对某公司BBS网站的设计开发工作,在完成了企业内部员工技术交流方便的同时,为企业提高效益,也使得开发人员通过设计、开发BBS网站提高自身的知识、技术储备能力,为进一步开发大型的网站奠定了坚实的基础。

本文主要介绍了BBS网站的系统需求分析、数据库E-R设计、论坛主要页面的jsp动态设计、包括页面各个功能块之间的衔接和数据库接口实现,完全实现了企业的BBS网站设计。

本文项目开发的主要过程及结构说明如下:

全文共分为五章。

第一章,主要介绍本文设计研究内容的背景及项目开发过程。

第二章,主要内容是系统开发环境及相关技术介绍。

首先,介绍了该项目涉及的相关知识点内容:

MVC技术介绍、Struts技术介绍和JSP技术介绍。

第三章,本章是核心内容,介绍了该项目开发的一般流程:

需求分析、系统设计、系统流程图、数据库设计、论坛首页设计、公共模块设计、页面模块设计几个关键环节,每一个部分都给出设计过程的主要流程和设计思路,关键部分注重介绍。

第四章,通过浏览器测试设计的各个部分功能模块的网页,测试各个网页之间的连接跳转情况、布局情况以及数据库运行情况等,对于不合理之处进行修改,给出测试每一功能模块网页的效果,附上必要的截图。

第五章,总结所做工作,并提出展望。

2

系统开发环境及相关技术介绍

2.1.开发环境及工具

1.本系统的开发环境

1)JDK1.6.0_23安装

假如JAVA的安装路径为:

C:

\ProgramFiles\Java\jdk1.6.0_23\

环境变量配置代码如下:

JAVA_HOME=C:

\ProgramFiles\Java\jdk1.6.0_23

Path=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

2)Tomcat6.0安装

3)MyEclipse8.5安装

4)MySQL5.0安装

5)EmEditorProfessional9.17文本编辑器

2.2.相关技术介绍

2.2.1MVC技术介绍

模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。

最近几年被推荐为Sun公司J2EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。

模型-视图-控制器模式是一个有用的工具箱,它有很多好处,但也有一些缺点。

MVC如何工作

MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。

使用MVC应用程序被分成三个核心部件:

模型、视图、控制器。

它们各自处理自己的任务。

视图

视图是用户看到并与之交互的界面。

对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services。

如何处理应用程序的界面变得越来越有挑战性。

MVC一个大的好处是它能为你的应用程序处理很多不同的视图。

在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,它只是作为一种输出数据并允许用户操纵的方式。

模型

模型表示企业数据和业务规则。

在MVC的三个部件中,模型拥有最多的处理任务。

例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。

被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。

由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。

控制器

控制器接受用户的输入并调用模型和视图去完成用户的需求。

所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。

它只是接收请求并决定调用哪个模型构件去处理请求,然后用确定用哪个视图来显示模型处理返回的数据。

现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。

2.2.2Struts技术介绍

Struts是采用JavaServlet/JavaServerPages技术,开发Web应用程序的开放源码的framework。

Struts就是在JSPModel2的基础实现了MVC设计模式的WEBFramework。

采用Struts能开发出基于MVC(Model-View-Controller)设计模式的应用构架。

基于Struts构架的WEB应用程序基本上符合JSPModel2的设计标准,可以说是MVC设计模式的一种变化类型。

Struts的目的是为了帮助你减少在运用MVC设计模型来开发Web应用的时间。

你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。

如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。

2.2.3JSP技术介绍

JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。

JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。

用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。

插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP与JavaServlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。

目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。

JSP页面由HTML代码和嵌入其中的Java代码所组成。

服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。

JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。

JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

 

3系统分析

3.1.需求分析

该BBS系统主要的功能是讨论各种语言的开发技术、技巧,并交流开发经验等,但是需要对技术栏目的文章浏览和文章发表功能加以一定的限制,这样论坛的管理功能便显得尤为重要。

管理功能需要根据不同的用户级别执行特定功能的限制,以及管理用户等级和BBS中的各种数据信息。

通过对一些典型BBS系统的考察、分析,要求本系统具有以下特点:

1)采用B/S结构,基于浏览器管理界面,无需专业人士维护;

2)采用Struts框架开发,基于MVC模式,将前台页面与业务逻辑分开,使用控制器控制前台页面与业务逻辑的交互;

3)功能强大,操作简单,扩展性强,稳定性高;

4)系统无操作系统限制,方便不同平台之间的移植;

3.2.系统设计

3.2.1系统设计目标

开发该BBS系统的最终目标是为了企业内部员工提供一个良好的技术交流平台,得到客户的及时反馈,从而提升公司的整体技术水平,提高公司效益。

为了满足客户需求,本系统在设计时应实现以下几个目标:

1)系统界面友好、美观

2)划分用户级别,将不同的权限划分给不同的人群

3)合理管理论坛相关信息

4)易于维护和扩展

5)系统运行稳定、可靠

3.2.2系统功能模块设计

该BBS系统是一个典型的JavaWeb程序,由系统前台和后台管理两部分组成。

1.系统前台

系统前台模块提供给所有用户使用,用户包括注册用户和普通游客,二者所拥有的功能不通。

系统前台主要包括用户登录、用户注册、发表主题、论坛浏览、主题浏览等功能模块。

2.系统后台

后台管理主要由管理员使用,可对论坛中相关信息进行管理、维护,普通用户无权使用。

后台管理主要包括用户管理、栏目管理、主题管理、回复管理、管理员注销等功能模块。

图3.1BBS系统前台功能结构

图3.2BBS后台功能结构

 

3.2.3系统业务流程图

图3.3BBS系统的业务处理流程图

3.2.4系统架构说明

随着Internet越来越广泛的应用,原来基于局域网的企业网开始采用Internet技术构筑和改建自己的企业网,即Intranet。

于是,一种新兴的体系结构Browser/Server应运而生,并获得飞速发展,成为众多厂家争相采用的新型体系结构。

本质上,Browser/Server也是一种Client/Server结构,它是一种由传统的二层Client/Server结构发展而来的三层Client/Server结构在Web上应用的特例。

在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。

Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,

服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。

在Browser/Server三层体系结构下,表示层(Presentatioon)、功能层(BusinessLogic)、数据层(DataService)被割成三个相对独立的单元。

图3.4网络三层结构图

3.3.系统流程图

图3.5系统流程图

3.4.搭建系统开发环境

本系统的主体框架采用Struts实现网站的MVC模式,需要在MyEclipse8.5中构建Struts项目。

具体构建步骤如下:

1)在工程名称上点击鼠标右键,在弹出的快捷菜单中选择MyEclipse/AddStrutsCapabilities命令,在弹出的New对话框中配置相关信息。

图3.6Struts配置图

在New对话框中,选中Strutsspecification栏中的Struts1.2单选按钮,修改Basepackagefornewclasses文本框中的包名为com.wsy.struts,修改Defaultapplicationresources文本框中的消息资源文件为com.wsy.struts。

ApplicationResources_zh_CN,然后单击Finish按钮。

2)在“项目名称“\WebRoot\WEB-INF路径下找到web.xml文件,将以下代码添加到web.xml文件中的标签之间。

关键代码如下:

action

org.apache.struts.action.ActionServlet

config

/WEB-INF/struts-config.xml

debug

3

detail

3

0

action

*.do

index.jsp

3)在MyEclipse中配置Tomcat服务器

MyEclipse提供了与各种JavaWeb服务器的连接方式,经过设置后,可以直接在MyEclipse中启动Tomcat服务器,这样便可以在MyEclipse中控制服务器的启动和停止。

4)添加MySQL驱动包

BBS系统采用MySQL数据库,所以在项目中需要添加MySQL驱动包。

3.5数据库设计

数据是系统的基础,数据库设计关系到该系统开发的成败,因此这一环节的设计对于整个系统的设计起到至关重要的作用。

数据设计就像建筑的地基一样,若不合理的设计,将会影响整个系统开发的全过程,甚至给后期的维护工作带来极大的不便。

3.5.1数据库分析

基于对整个系统的架构及功能分析,本系统采用互联网比较流行的MySQL数据库系统。

相对于Oracle等别的大型数据库系统来说,MySQL数据库更适合于中小型系统,其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

目前MySQL被广泛地应用在Internet上的中小型网站中。

3.5.2数据库概念设计

根据以上对系统所作的需求分析、流程设计以及功能结构的确定,从每个功能模块中可以抽象出一个或多个实体对象,例如用户、论坛、主题、回复主题实体对象等。

这些实体对象彼此相互联系,并且最终被创建数据库表结构。

1.用户实体对象

用户实体对象包括用户编号、用户名、用户签名、用户头像、用户级别等用户相关属性。

用户编号是识别用户实体的唯一编号,是数据表的关键字,其数据类型为int型,并且具有自增特性;用户级别属性是标明用户在本系统中的功能权限;其他属性都是描述此用户的相关信息的属性,例如用户头像、用户联系地址、用户个人主页等。

图3.7用户实体E-R图

2.论坛实体对象

论坛实体对象包括论坛编号、论坛名称、斑竹、创建时间等相关属性。

论坛实体对象中的论坛编号是识别论坛实体的唯一编号,是数据表的关键字,其数据类型为int型,并且具有自增特性;其他属性都是用于描述此论坛的相关信息。

图3.8论坛实体E-R图

3.主题实体对象

主题实体对象包括主题编号、主题标题、主题内容、主题作者、发表时间、论坛编号、论坛名称、人气等相关属性。

主题实体对象中的主题编号是识别论坛实体的唯一编号,是数据表的关键字,其数据类型为int型,并且具有自增特性;论坛编号属性标明此主题发表在哪个论坛中;由于在使用主题实体对象时,频繁用到论坛实体对象中的论坛名称属性,所以在这里将论坛名称属性定义到主题实体中;人气属性用户标明此主题被访问的次数;其他属性都是用于描述主题实体对象的相关信息。

图3.9主题实体E-R图

 

4.回复主题实体对象

回复主题实体对象包括回复主题编号、回复主题标题、回复主题内容、回复主题作者、回复主题时间、主题编号、主题名称、回复作者心情等相关属性。

回复主题实体对象中的回复主题编号是识别论坛实体的唯一编号,是数据表的关键字,其数据类型为int型,并且具有自增特性;主题编号属性标明此回复主题发表在哪个主题中;其他属性都是用于描述回复主题实体对象的相关信息。

图4.0回复主题实体E-R图

3.5.3PowerDesigner数据库建模

在数据库概念设计中已经分析了用户、论坛、主题、回复主题等主要的数据库实体对象,这些实体对象最终被定义为数据库表,形成整体的数据库结构表形式。

基于上述我们选用当前比较流行的PowerDesigner软件完成数据库建模工作。

PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。

PowerDesigner不仅加速了开发的过程,也向最终用户提供了管理和访问项目的信息的一个有效的结构。

它允许设计人员不仅创建和管理数据的结构,而且开发和利用数据的结构针对领先的开发工具环境快速地生成应用对象和数据敏感的组件。

开发人员可以使用同样的物理数据模型查看数据库的结构和整理文档,以及生成应用对象和在开发过程中使用的组件。

应用对象生成有助于在整个开发生命周期提供更多的控制和更高的生产率。

 

图4.1系统建模结构图

3.5.4创建数据库表

(1)用户信息表

用户信息表,记录用户在BBS上的注册的详细信息,包括各种操作权限,斑竹、管理员。

表名:

tb_user

序号

列定义

主键

类型

长度

单位

NOT

NULL

缺省

取值范围

备注

列名

中文名称

下限

上限

1.

ID

用户编号

Y

int

11

2.

username

用户名称

varchar

20

3.

password

用户口令

varchar

20

4.

sex

性别

varchar

2

5.

email

E_mail

varchar

50

6.

oicq

oicq

varchar

20

7.

signature

个人签名

varchar

300

8.

grade

用户级别

varchar

20

9.

Adress

联系地址

varchar

20

10.

tx

用户头像

varchar

20

11.

grzy

个人主页

varchar

50

12.

realname

真实姓名

varchar

20

(2)论坛信息表

记录论坛的详细信息。

表名:

tb_forum

序号

列定义

主键

类型

长度

单位

NOT

NULL

缺省

取值范围

备注

列名

中文名称

下限

上限

1.

ID

论坛编号

Y

int

11

2.

forummane

论坛名称

varchar

20

3.

manager

斑竹

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1