基于J2EE的bbs论坛系统毕业设计说明书.doc
- 文档编号:1242776
- 上传时间:2023-04-30
- 格式:DOC
- 页数:48
- 大小:861KB
基于J2EE的bbs论坛系统毕业设计说明书.doc
《基于J2EE的bbs论坛系统毕业设计说明书.doc》由会员分享,可在线阅读,更多相关《基于J2EE的bbs论坛系统毕业设计说明书.doc(48页珍藏版)》请在冰点文库上搜索。
计算机与通信学院
本科生毕业设计说明书
基于J2EE的网上论坛系统
作者:
乔柏
学号:
07500227
专业:
信息与计算科学
班级:
07级2班
指导教师:
马维俊
答辩时间:
2011年6月
基于J2EE的网上论坛系统
BBSSystemBasedOnJ2EE
乔柏(QiaoBai)
07500227
前言
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。
作为Internet上一种先进的,易于被人们所接受的信息检索手段,WorldWideWeb(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。
据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。
近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
论坛的发展也如同网络,雨后春笋般的出现,并迅速的发展壮大。
论坛(BBS)的英文全称是BulletinBoardSystem,翻译为中文就是“电子布告栏系统”。
BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在苹果机上运行。
早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过来传播或获得消息而已。
一直到开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。
近些年来,由于爱好者们的努力,BBS的功能得到了很大的扩充。
现在的论坛几乎涵盖了我们生活的各个方面,几乎每一个人都可以找到自己感兴趣或者需要了解的专题性论坛,而各类网站,综合性门户网站或者功能性专题网站也都青睐于开设自己的论坛,以促进网友之间的交流,增加互动性和丰富网站的内容。
41
目录
摘要 I
Abstract II
第一章绪论 1
1.1课题研究的目的及意义 1
1.2国内外研究动态 1
1.3本文的工作 2
第二章开发平台与主要技术 3
2.1开发平台 3
2.1.1MyEclipse 3
2.1.2Tomcat 3
2.1.3JDK 4
2.2主要技术 4
2.2.1JSP 4
2.2.2MVC模型 4
2.2.3Stuts、Hibernate、AJAX 4
第三章需求分析 6
3.1项目背景 6
3.1.1市场背景 6
3.1.2项目组织 6
3.2功能概述 6
3.2.1功能结构 6
3.2.2功能描述 7
3.3系统用例 7
3.4性能需求 9
3.4.1性能环境 9
3.4.2访问入口需求 9
第四章总体设计 10
4.1数据库设计 10
4.4.1E-R图 10
4.1.2表的设计 11
4.2时序图 13
第五章详细设计 15
5.1系统架构 15
5.2技术体系 16
5.3控制层的设计 16
5.4业务层的设计 17
5.5持久层的设计 18
5.6权限设计 19
第六章测试 20
6.1测试方案 20
6.1.1单元测试 20
6.1.2集成测试 20
6.2测试用例 21
第七章使用说明 22
7.1搭建运行环境 22
7.2操作指南 22
7.2.1后台操作 22
7.2.2前台操作 24
第八章总结 26
参考文献 27
外文原文 28
译文 35
致谢 41
摘要
论坛是互联网上的一个重要应用,其主要功能是给用户一个在网上互相交流、互相学习、互相帮助的平台。
用户在BBS站点上可以获得各种信息服务,发布信息,进行讨论,聊天等等。
论文主要介绍了基于J2EE技术的网上论坛系统的设计和实现。
设计包括数据库设计,系统架构设计,以及前端用户界面设计。
系统中普通用户可以完成用户的注册,登录,退出,发帖,跟帖,修改帖子,删除帖子,修改密码等功能。
管理员可以对版块进行维护,对帖子和用户进行管理。
文中详细描述了系统需求、模块结构及功能。
系统使用了MVC的设计模式,程序在业务逻辑、控制逻辑和表现逻辑上实现了分离。
系统结构清晰,具有良好的可读性、可扩展性和可维护性。
系统使用了Struts框架,呈现层采用了JSP动态网页技术,页面用到了CSS(层叠样式表)以及JavaScript技术。
在文字处理方面利用了CKEditor框架。
注册页面通过AJAX技术来完成用户名的验证。
系统以MyEclipse作为开发工具,用Hibernate连接后台MySQL数据库,界面设计人性化,操作简单。
关键词:
论坛系统;J2EE;数据库;设计模式;对象关系模型
Abstract
BBSisoneoftheimportantapplicationontheInternet,itsmainfunctionisgivingInternetusersaplatformtoexchange,communication,learningandhelpeachother.Theuserscangetavarietyofinformationservices,releaseinformation,discussions,andchat.
ThispaperdescribesBBSsystem’sdesignandimplementationbasedonJ2EEtechnology.Itmainlyincludesdatabasedesign,systemarchitecturedesign,andUIdesign.Generalusersinthesystemcancompletetheuserregistration,login,logout,post,replyposts,editposts,deleteposts,modifypasswordandsoon.Administratorcanmanagetheboard,whilethecorrespondingpostandusermanagement.Thepaperdescribesindetailthesystemrequirements,eachmodulestructureandfunction.
ThesystemusesMVCdesignpattern.Theprocedureintheservicelogic,thecontrollogicandperformancelogichasrealizedtheseparation.Thissystemstructureisclear,hastheverygoodreadability,theextendibilityandthemaintainability.ItusedtheStrutsframework.TheviewlevelusedtheJSPdynamicpagetechnology.ThepagehasusedCSS(cascadingstylesheet)aswellasJavaScript.ItusedtheCKEditorframeworkinthelanguageprocessingaspect.RegistrationpageusestheAJAXtechnologytocompleteuser’sconfirmation.ThissystemusingMyEclipseasthedevelopmenttools,MySQLasback-enddatabaseandHibernatetoconnectdatabase.Ithasafriendlyinterfaceandsimpleoperationfeatures.
Keywords:
BBSSystem;J2EE;Database;DesignPattern;Object-RelationalModel
第一章绪论
1.1课题研究的目的及意义
Java是一种面向对象的程序设计语言,由于其跨平台的优点,使得Java的发展特别迅速,尤其是在网络方面的发展。
网上论坛系统是网络常见的一个应用,用于网络用户的信息交流。
如:
知名的天涯在线论坛。
通过论坛系统,用户可以发表自己的言论(主题贴),其他的用户可以对主题贴进行评论(跟贴)或发表更多的言论(主题贴)。
为了把所学的Java知识用于具体的实际运用,同时更深刻的理解互联网的运用,我的毕业设计选择为基于J2EE的网上论坛系统。
1.2国内外研究动态
进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。
传统的单机版应用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端——服务器的C/S结构应用系统,这类软件具有结构严谨,运行效率高,服务器端压力小,安全性好等优点,被广泛运用于局域网中。
而另一种,也是本毕业设计所采用的,是称为浏览器——服务器的B/S结构应用系统,它的特点是在客户端直接采用了功能强大的浏览器软件作为界面,其优点在于软件开发效率高,客户端不受操作平台的限制、也不受地域的限制,网络传输量少,即适用于局域网,更适用于Internet,而且投资小、见效快,用户可以不必进行服务器方面的投资,而是去租用,甚至是免费使用ISP的服务器资源,因而受到越来越多中小型单位的青睐。
Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。
ARPA计划尝试建设一个网络系统,它可将各种不同厂商的电脑连接起来。
随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。
到了20世纪80年代,Internet这个名词因势产生,它代表着这十年来所构建涵盖全球各地的网络系统。
从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。
最初的Internet资源服务都还停留在文本模式,1989年,量子物理实验室(CERN)下的一个研究小组着手开发一种全新的Internet服务,它可以在网络上传送图片、文本、影像、声音等多媒体数据。
于是由TimBernersLee领导的小组开发出了一种主从、分布式的网络服务系统,这就是WWW(WorldWideWeb),俗称“万维网”。
所谓WWW其实就是连上Web服务器访问资源,取得的内容就是所谓的“主页”(HomePage)。
进入的网页通常不会只有一页,而是整个网站的内容。
“网站”是一种呈现在网络上的新兴媒体,通过Internet已经成为一个实时的,多媒体的信息传播渠道。
它的载体主要是电脑,范围覆盖全球各地,没有国界,不分人种,时时刻刻地提供服务。
目前,人们渐渐开始把网站称之为广播、电视、报刊以外的第四新闻媒体,以“共享、公平、公正、创新、国际化、团队精神”为特征的网络文明也已逐渐成为这个时代的标志,人们越来越习惯于通过Internet网络获取信息,通过Internet在网站上发表自己对社会对生活的理解和建议。
随着网络的普及,论坛作为互联网上的一种应用,在Internet上扮演了一个很重要的觉色。
随着互联网技术的发展,论坛内容越来越丰富,深受广大网民的喜爱,因此商业网站对论坛也重视起来,提供与网民交流的平台,同时在线技术支持也在论坛中开展起来。
1.3本文的工作
通常BBS系统就是提供给注册用户一个平台,会员用户可以通过Internet接入,登录论坛,在这个平台上发表文章、阅读文章、回复文章等等。
C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。
早期的软件系统多以此作为首选设计标准。
B/S结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓N-Tier结构。
B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
随着Windows将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。
结合BBS系统实际需要,本系统采用B/S结构来实现通用BBS的基本功能,如发帖,回帖等。
第二章开发平台与主要技术
2.1开发平台
2.1.1MyEclipse
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
MyEclipse是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts,JSF,CSS,Javascript,Sql,Hibernate等技术。
MyEclipse是Eclipse插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及排错。
MyEclipse是一个专门为Eclipse设计的商业插件的完美结合,MyEclipse为Eclipse提供了一个大量私有和开源的java工具的集合,很大程度上解决了各种开源工具的不一致问题,并大大的提高了Java和JSP的开发效率。
鉴于MyEclipse有众多优点,本系统选用MyEclipse作为集成开发环境,这给程序的开发带来了许多方便。
2.1.2Tomcat
Tomcat服务器是一个免费的开放源代码的Web应用服务器,可以和大部分主流HTTP服务器一起工作,它是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现。
因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者得喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat服务器不但支持运行Servlet和JSP,而且还具备了商业JavaWeb应用容器的特征,除了能够运行Servlet和JSP外,还具备了作为WEB服务器的特有功能。
它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能,而且它还在不断的改进和完善中。
本系统在部署应用的过程中选用了Tomcat作为WEB服务器。
2.1.3JDK
JDK是java的核心,包括了Java运行时环境(JavaRuntimeEnvirnment),一堆Java工具和Java基础类库(rt.jar)。
它是一个写Java程序的开发环境。
本系统在开发的过程中选用的是JDK1.6版本。
2.2主要技术
2.2.1JSP
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程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
2.2.2MVC模型
MVC是三个单词的缩写,分别为:
模型(Model),视图(View)和控制Controller)。
MVC模式的目的就是实现Web系统的职能分工。
Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。
View层用于与用户的交互,通常用JSP来实现。
Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
2.2.3Stuts、Hibernate、AJAX
struts是开源软件。
使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择。
Struts最早是作为ApacheJakarta项目的组成部分,项目的创立者希望通过对该项目的研究,改进和提高JavaServerPages、Servlet、标签库以及面向对象的技术水准。
Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架。
这个框架之所以叫"Struts",是为了提醒我们记住那些支撑我们房屋,建筑,桥梁,甚至我们踩高跷时候的基础支撑。
这也是一个解释Struts在开发Web应用程序中所扮演的角色的精彩描述。
当建立一个物理建筑时,建筑工程师使用支柱为建筑的每一层提供支持。
同样,软件工程师使用Struts为业务应用的每一层提供支持。
它的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
我们仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
如果想混合使用Servlets和JSP的优点来建立可扩展的应用,Struts是一个不错的选择。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
AJAX不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。
通过AJAX,JavaScript可使用JavaScript的XMLHttpRequest对象来直接与服务器进行通信。
通过这个对象,JavaScript可在不重载页面的情况与Web服务器交换数据。
AJAX在浏览器与Web服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。
第三章需求分析
3.1项目背景
3.1.1市场背景
当今网络技术逐渐渗入社会生活各个层面,随着互联网的普及,人们在网上的活动变得越来越丰富,在网上的交流也越来越平凡。
许多公司为了丰富员工的互相交流,让彼此互相沟通,都有其内部的交流平台,这和我们通常用到的BBS交流平台的功能都差不多。
而且许多大的网站为了提供会员之间的相互交流,吸引更多的会员注册,都提供了BBS功能,从而使得人们在网上的交流变得丰富多彩。
人们可以在BBS上表自己的看法,请教不知道的问题,查看别人发布的信息。
因此说BBS网上论坛系统有着广阔的市场背景。
3.1.2项目组织
项目来源:
兰州理工大学计算机与通信学院
指导人员:
兰州理工大学计算机与通信学院教师马维俊
开发人员:
信息与计算科学2班乔柏
主管部门:
兰州理工大学计算与通信学院毕业设计审查办公室
3.2功能概述
3.2.1功能结构
本系统大致可分为3个模块,分别为:
帖子管理模块、用户管理模块、版块管理模块。
帖子管理模块是对帖子的操作,包括发表帖子,回复帖子,修改帖子,删除帖子的操作;用户管理模块是对用户权限控制的操作,包括登录,安全退出,注册,修改信息;版块管理模块是对系统版块的维护,包括添加版块,修改版块,删除版块。
系统的功能结构图如下:
基于J2EE的网上论坛系统
帖子管理
删除版块
修改版块
添加版块
修改信息
用户退出
用户登录
用户注册
删除帖子
修改帖子
发表帖子
版块管理
用户管理
图3.1系统功能结构图
3.2.2功能描述
基于J2EE的网上论坛系统,包括BBS交流系统前台和后台管理系统两个子系统。
主要包括:
版块管理、用户管理、帖子管理、三个功能模块。
版块管理:
可以进行添加版块,修改版块,删除版块,添加子版块,修改子版块,删除子版块的操作,这个功能只有管理员才能进行此操作。
用户管理:
可以进行登录、登出、用户注册、修改信息等功能。
帖子管理:
可以进行发表帖子,修改帖子,删除帖子,回复帖子的功能。
需要注意的是,这些操作都必须在用户登录以后才能进行,而且每个登录的用户只能修改和删除自己的帖子以及回帖,管理员则可以删除所有人的帖子以及回复。
3.3系统用例
由参与者(Actor)、用例(UseCase)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。
用例图(UserCase)是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图展示了用例之间以及同用例参与者之间是怎样相互联系的。
用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。
BBS交流平台前台用例:
前台主要是普通用户登录系统后能进行发帖,回帖,从而相互交流信息,图3.2是系统前台的用例图。
图3.2帖子管理用例图
BBS交流平台后台用例:
后台是管理员登录系统后主要完成对版块的管理,以及对帖子的管理,图3.3是后台系统的用例图。
图3.3系统后台用例图
3.4性能需求
3.4.1性能环境
操作系统:
Windows系列或Linux系列均可。
Java虚拟机版本:
Windows下或Linux下JDK1.5以上版本。
浏览器:
支持IE6.0、IE7.0、IE8.0以及FireFox2.0、Firefox3.0
WEB服务器:
Tomcat5.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 J2EE bbs 论坛 系统 毕业设计 说明书