admin 管理员组

文章数量: 1086019


2024年3月14日发(作者:printformat什么意思)

郑州工业应用技术学院

课程设计说明书

题目: 小型论坛系统

* * : ***

院 (系): 信息工程学院

专业班级 : 14级计算机科学与技术

学 号 : **********

**** : ***

成 绩 :

时间: 2017 年 3 月 6 日至 2017 年 5 月 11 日

郑州工业应用技术学院

课程设计任务书

题目 小 型 论 坛 系 统

专业、班级 14级计算机科学与技术 学号 1401110204 姓名 王 浩 浩

主要内容:

论坛服务已经是互联网上的一种极为常见的互动交流服务。论坛可以为网友提供

开放性的分类讨论区专题服务,网友们可以在此发表自己的观感,交流某些技术,经

验乃至人生的感悟与忧欢,亦可以作为用户和商家交流的渠道,商家也可以在此回答

用户提出的问题或发布某些消息。

基本要求:

本次设计具有以下功能:

系统前台用来供所有网友交流之用,包括版块列表、主题列表、显示主题详细内

容、发表主题、发表回复、主题管理、用户注册以及用户登录等子模块。

后台供管理员管理论坛之用,包括版块设置和用户设置两个子模块。

主要参考资料:

[1] 回相.论坛论坛[J].网络与信息,2007,3:10—12.

[2] 姜力、高群主编.SQL Server 数据库设计与管理[M].北京大学出版社,2006年.

[3] 乔普拉(美)著.JSP高级程序设计[M].人民邮电出版社,2005年.

完 成 期 限: 3月6日——5月1日

指导教师签名:

课程负责人签名:

摘 要

为了方便信息的交流,在结合动态服务网页(JSP)和SQL2000技术之下开发了这

个界面友好的小型论坛系统。论坛使用动态服务网页(JSP)技术建设论坛的骨干框架,

使用SQL2000制作系统的数据库,利用了Struts、Spring、Hibernate三大框架技术的

部分知识点,还结合使用了AJAX技术,通过这些实现了一个功能相对齐全的论坛系

统。

该论坛为网友们提供了一个交流的平台,在这里注册用户可以自由地发表自己的

观点和对论坛的主题帖子发表意见,还可以及时的解决网友提出的问题,获取对自己

有用的知识。该论坛还有一些特殊的功能,强大的搜索功能等。

关键词:动态服务网页;论坛;JAVA

目 录

前 言 ......................................................................................................................... 1

1系统需求分析说明 .................................................................................................... 3

1.1系统介绍 ......................................................................................................... 3

1.2功能需求 ......................................................................................................... 3

2总体设计 .................................................................................................................... 4

2.1总体结构和模块设计 ..................................................................................... 4

2.2处理流程 ......................................................................................................... 4

2.3数据库设计 ..................................................................................................... 6

3系统详细设计 ............................................................................................................ 9

3.1前台页面 ....................................................................................................... 10

3.2后台页面 ....................................................................................................... 15

3.3系统设计主要代码及配置文件 ................................................................... 18

4测试 23

4.1测试方法 ....................................................................................................... 23

4.2测试范围 ....................................................................................................... 23

4.3测试报告 ....................................................................................................... 23

总结与展望 ................................................................................................................. 25

参考文献 ..................................................................................................................... 26

..

前 言

进入21世纪,计算机技术迅速向着网络化的、集成化方向发展。传统的单机版应

用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新

一代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为

客户端——服务器的C/S结构应用系统,这类软件具有结构严谨,运行效率高,服务

器端压力小,安全性好等优点,被广泛运用于局域网中。另一种,也是本毕业设计所

采用的,是称为浏览器——服务器的B/S结构应用系统,它的特点是在客户端直接采

用了功能强大的浏览器软件作为界面,其优点在于软件开发效率高,客户端不受操作

平台的限制、也不受地域的限制,网络传输量少,即适用于局域网,更适用于Internet,

而且投资小、见效快,用户可以不必进行服务器方面的投资,而是去租用,甚至是免

费使用ISP的服务器资源,因而受到越来越多中小型单位的青睐。

本论文就是基于B/S结构实现的。论坛也常被简称为论坛(Bulletin Board

System)。1978年在美国芝加哥开发出一套基于8080芯片的C论坛

/Chicago(Computerized Bulletin Board System/Chicago),此乃最早的一套论坛系

统。论坛发展至今,目前世界上业余的论坛网络除了FidoNet(惠多网)以外,几个较

具知名度的还有EggNet、AlterNet和R论坛-Net等等。由于这些网络和FidoNet之

间的信息交流不成问题,这就实现了所谓的跨网。大约是从1991年开始,国内开始了

第一个论坛站。经过长时间的发展,直到1995年,随着计算机及其外设的大幅降价,

论坛才逐渐被人们所认识。1996年更是以惊人的速度发展起来。国内的论坛站,按其

性质划分,可以分为两种:一种是商业论坛站,如新华龙讯网;另一种是业余论坛站,

如天堂资讯站。由于使用商业论坛站要交纳一笔费用,而商业站所能提供的服务与业

余站相比,并没有什么优势,所以其用户数量不多。多数业余论坛站的站长,基于个

人关系,每天都互相交换电子邮件,渐渐地形成了一个全国性的电子邮件网络China

FidoNet(中国惠多网)。于是,各地的用户都可以通过本地的业余论坛站与远在异地的

网友互通信息。这种跨地域电子邮件交流正是商业站无法与业余站相抗衡的根本因素。

由于业余论坛站拥有这种优势,所以使用者都更乐意加入。这里“业余”2字,并不

是代表这种类型的论坛站的服务和技术水平是业余的,而是指这类论坛站的性质。一

般论坛站都是由志愿者开发的。他们付出的不仅是金钱,更多的是精力。其目的是为

了推动中国计算机网络的健康发展,提高广大计算机用户的应用水平。论坛是互联网

..1

一种人与人之间交互的必备工具,特别是做网站必备。以前我们一直用留言本形式,

但是随着您的网站的大规模化,越来越多的迫切需要一种可以易于维护和易于交流的

平台,那就要用论坛。论坛可以通过WEB浏览器访问,并且实现上传文件等诸多功能。

网民们便逐步开始接受这种使用方便快捷、功能日渐强大的系统。在它上面网民们可

以张贴和发布各种各样的信息,讨论各式话题 。

随着中国网络的普及和计算机及其外设的大幅度降价,Internet这个概念逐渐深

入人心。中国网民的数量呈几何级数量增长,论坛的普及程度也直追Email。每个网

站几乎都拥有自己的论坛或者论坛链接,论坛社区提供给用户的服务是全面而且非常

友好的,用户在社区中可以根据自己的喜好设置不同的显示风格,根据自己的需求定

制各种服务。通过论坛更加快捷的了解企业员工的信息,而建立会员服务的基础是建

系论坛管理系统!通过应用该系统可以实现用户与用户间的交流、企业与企业间的信

息交互,利用网络经济而又快捷地与外界进行各种信息沟通,取得更有用的信息资源。

论坛系统服务已经是互联网站一种极为常见的互动交流服务。论坛可以向网友提

供开放性的分类专题讨论区服务,可以在此发表自己的某些观感、交流某些技术、经

验乃至人生的感悟与忧欢,亦可以做为网友们之间的交流渠道,网站亦可在此回答网

友们提出的问题或发布某些消息。通过论坛的方式,增强个人与个人,团体与团体,

个人与团体之间的交流联系,在Internet上实现信息的传递,提高办事效率[5]。因

此论坛建设在Internet应用上的地位显而易见,它已成为现代人沟通和获取信息的重

要组成部分,从而倍受人们的重视。

本文利用JSP和SQL Server 2000做一个在线论坛系统。该系统以Internet为平

台,前台可使任何人注册、登陆在论坛上进行发贴及讨论,版主可以进行一部分管理。

而管理员也可以在后台进行相关的管理。

..2

1. 系统需求分析说明

1.1系统介绍

本系统是基于B/S结构的一个小型论坛,主要基于Windows平台,通过这个论坛,

用户之间可以实现互动交流。

1.2功能需求

通过对网上的一些著名论坛的认识,该论坛至少应该实现以下功能:

(1) 注册管理:能够对用户名,密码的简单验证,能够防止利用页面刷新重复注

册,已经存在的用户名称不能重复注册。

(2) 浏览帖子:可以根据作者或内容等为关键字搜索帖子,分论坛版块显示帖子,

显示帖子详情,浏览帖子时不要求用户登录,但回复帖子前用户必须登录。

(3) 发表及回复帖子:只有登录用户才可以发表和回复帖子,并且对帖子的字数

有限制。

(4) 用户个人信息管理:登陆用户可以编辑注册后的个人资料,如修改密码等,

但是不可以修改用户名称。也可以对自己发表的帖子进行操作:如修改,删除。

(5) 回复管理:各论坛版块的版主可以对自己管理的版块的帖子的回复的帖子进

行管理,可以屏蔽回复。

(6) 论坛版块管理:只有管理员有该权限,管理员可以添加,删除版块,也可以

修改版块资料,如版块名称,上级版块,版主。

(7) 用户管理:只有管理员有该权限,管理员可以禁用,启用用户,进行用户密

码重置。

(8) 公告管理:只有管理员有该权限,管理员可以添加,删除公告。

(9) 帖子管理:各论坛版块的版主可以对自己管理的版块的帖子进行管理,可以

屏蔽和删除帖子。

..3

2. 总体设计

本系统采用B/S模式设计,方便系统的维护和使用。采取MVC设计模式与多层架

构的基于J2EE平台的设计,使系统拥有良好的扩展性,在满足当前使用需求同时还兼

顾系统以后可能的功能扩充。系统分成几个相对独立的模块,但这些模块都进行集中

式管理。

2.1总体结构和模块设计

该系统可分为前台和后台两个部分,前台是提供给一般用户和版主使用的,后台

是提供给管理员进行一些系统维护的。

功能结构图如下:

小型BBS论坛管理系统

前台功能 后台功能

图2.1 系统功能结构图

2.2处理流程

对于本系统的使用者来说,可以分为以下几类:未注册的用户,已注册的用户。

已注册的用户又可以分为一般用户、版主、管理员三类。根据用户角色的不同,用户

拥有的权限也会不同。根据这个来分析该系统的业务流程。

系统的业务流程如图2.2所示:

..4

图2.2 业务流程图

..5

2.3数据库设计

在建设网站系统之前,必须对系统所用到的数据进行大致的分类和具体的结构设

计,既要做到清晰明了,又要能适应系统各项功能的调用,而不至于产生结构上的逻

辑混乱,保证关键数据在意外情况下不会被破坏,可以说数据库是系统的重中之重。

数据库设计要遵循一些规则,一个好的数据库满足一些严格的约束和要求。尽量

分离各实体对应的表,一个实体对应一个表,分析该实体有哪些属性,对应有些什么

字段,以及各实体之间的联系。实体、属性与联系是进行概念设计时要考虑的三个元

素,也是一个好的数据库设计的核心。

2.3.1数据库结构属性图

图2.3 数据库结构属性图

2.3.2数据库表格设计

表2.1: UserInfo 用户信息表

..6

列名

uid

username

password

head

sign

roleid

active

说明

主键

用户名称

密码

头像

个人签名

角色

状态

类型

Int(4)

Varchar(20)

Varchar(20)

Varchar(20)

Varchar(200)

Int(4)

Int(4)

备注

自增

Not null

Not null

Not null

Not null

Not null

Not null

表2.2: Topic 帖子表

列名

tid

title

content

authorid

time

sortid

表2.3: Reply 回复表

列名

id

title

content

authorid

time

topicid

表2.4: Sort 论坛版块分类表

列名 说明

..7

说明

主键

帖子主题

帖子内容

作者

发表时间

所属的论坛版块

类型

Int(4)

Varchar(50)

Varchar(1000)

Int(4)

datetime

Int(4)

备注

自增

Not null

Not null

Not null

Not null

Not null

说明

主键

帖子主题

帖子内容

作者

发表时间

回复的帖子编号

类型

Int(4)

Varchar(50)

Varchar(1000)

Int(4)

datetime

Int(4)

备注

自增

Not null

Not null

Not null

Not null

Not null

类型 备注

sid

parentid

sortname

master

主键

上级版块

版块名称

版主名称

Int(4)

Int(4)

Varchar(50)

Varchar(20)

自增

Not null

Not null

允许为null

表2.5: Role 角色表

列名

rid

description

表2.6: Notice 公告表

列名

nid

content

说明

主键

公告内容

类型

Int(4)

Varchar(100)

备注

自增

Not null

说明

主键

角色描述

类型

Int(4)

Varchar(10)

备注

自增

Not null

..8

3. 系统详细设计

前台和后台页面设计采用的技术是JSP。之所以选择它是因为JSP技术具有下面

的特点:

1)Write Once Run Anywhere

JSP技术继承了JAVA先天性的先进概念“Write Once Run Anywhere”这种概念

正越来越深远的影响着互连网行业的交互式、WEB设计的理念。JSP Pages 可以非常

容易的开平台跨WEB服务器软件来是设计和开放源代码。

2)支持多种动态网页格式

目前对使用JSP技术设计出来的网页应该采取什么样的格式还没有一个明确的标

准。一般来说JSP技术即可以支持HTML/DHTML的传统浏览器文件格式,又可以支持应

用与无线通讯设备例如移动电话、PDA等设备进行网页浏览器的VML文件格式,还可

以支持其它一些B2B应用的XML格式。与以往的其它WEB应用技术相比较JSP技术有

它很鲜明的特点。

3)JSP 标签可扩充性

尽管JSP与ASP都使用标签与脚本技术来制造动态WEB网页,但是JSP技术能够

使开发者扩展JSP标签,使得应用JSP的开发者能定制标签库所以网页制作者可以充

分利用与XML兼容的标签技术,大大减少了对脚本语言的依赖。由于指定标签库技术

使得网页制作者降低了制作网页和想多个网页扩充关键功能的复杂程度。

4)JSP跨平台的可重用性

JSP的开发人员在开发过程中一直关注可重用性,JSP足见、企业JavaBean或制

定的标签都是跨平台可重用的。企业JavaBean可以访问传统的数据库并能并能已分布

式系统模式工作于UNIX和WINDOWS平台,JSP标签可扩充功能为开发人员提供简便的

与XML兼容的接口,即共享网页的打包功能使其完全的工业标准化。这种基于组建的

模式能够有效的提高应用程序的开发效率。因为这种模式能够使开发人员利用快捷的

子组建快速创建模板应用程序。然后再整和一些附加功能将其打包成一个JAVABEAN

组建。

5)易于维护性

基于JSP技术的应用程序比基于ASP的应用程序更易于维护和管理。脚本语言都

..9

很好服务于小的应用程序但不能适宜大型的复杂的应用程序,因为JAVA是结构化的,

它比较比较容易创建和维护庞大的组建化的应用程序。

3.1前台页面

3.1.1登录进入论坛首页页面

图3.1 论坛登录页面

在此页面中,用户如果点击“浏览进入”这个超链接,即以相当于游客的身份进

入论坛,进入的是论坛的首页(图3.2所示),那么就只拥有浏览和搜索帖子的权限。

如果用户输入了正确的用户名称和密码,就会以用户的身份进入论坛的首页。该用户

就可以拥有更多的权限,可以浏览和搜索帖子,修改个人资料,删除和修改自己发表

的主题帖子,发表和回复帖子。如果用户输入了不正确的信息,则系统阻止进入论坛

的首页,还是会跳转到该登录页面。如果用户点击了“注册”这个超链接,则会进入

注册页面(图3.3所示)。

3.1.2论坛首页

..10

图3.2 论坛首页

在该页面中,显示了很多信息。主要是各个版块的详细信息,包括版块的名称,

版主,发表于该版块下的主题帖子总数,以及最新发表的帖子的信息。若有发表的帖

子,则显示该帖子的主题,作者,和发表时间,并且提供了帖子主题的超链接,点击

后会进入显示该帖子的详细信息页面。若无发表的帖子,则显示暂无。该页面上还显

示了公告的信息,即公告栏显示的内容。页面上还提供了搜索帖子的功能,可以根据

作者名称来精确查找和根据帖子内容来模糊查找。如果用户是经过登录验证后进入该

页面的,页面会提供“个人中心”的超链接,点击此链接会进入个人信息中心页面(如

图3.6所示)。如果用户是通过浏览进入该页面的,则不会提供该超链接。

..11

3.1.3注册页面

图3.3 注册页面

用户可以在该页面中输入注册资料,包括用户名,密码,个性签名和头像。用户

名,密码,个性签名都是必填的,头像是默认选择第一个,用户也可以重新选择。在

用户提交之前,对所填的信息都作了验证,包括用户名非空并且不可重复,密码非空,

密码长度必须大于或等于4,两次输入的密码必须一致,个性签名非空,且长度小于

50。在对用户名称的唯一性验证时,使用了AJAX技术,当用户输入完用户名,该文本

框失去焦点时,会检查数据库中是否存在该用户名,

如果不存在,则在文本框后用蓝色字体显示“Ok,你可以用这个名称!”,如果存

在,则在文本框后用红色字体显示“No,这个名称已占用!”。提交成功后,跳转到登

录页面。

在这里简单介绍一下AJAX技术。AJAX全称为“Asynchronous JavaScript and

XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。它

使浏览器可以为用户提供更为自然的浏览体验。在Ajax之前,Web站点强制用户进入

提交/等待/重新显示范例,用户的动作总是与服务器的“思考时间”同步。Ajax提供

与服务器异步通信的能力,从而使用户从请求/响应的循环中解脱出来。借助于Ajax,

可以在用户单击按钮时,使用JavaScript和DHTML立即更新UI,并向服务器发出异

..12

步请求,以执行更新或查询数据库。当请求返回时,就可以使用JavaScript和CSS

来相应地更新UI,而不是刷新整个页面。最重要的是,用户甚至不知道浏览器正在与

服务器通信:Web站点看起来是即时响应的。

3.1.4发表帖子

图3.4 发表页面

用户可以在该页面中填写帖子的资料,包括标题和内容。提交之前也作了验证:

标题非空且长度小于50,帖子内容非空且长度小于2000。为提示用户控制输入,通过

JavaScript实现了动态显示用户输入的字符数目。为避免重复提交,提供了验证码,

只有输入了正确的验证码后才会提交。

..13

3.1.5显示帖子及回复

图3.5 显示贴子与回复页面

在该页面中,显示了帖子的详细信息和回复的帖子的详细信息。并且实现了分页

功能,每页显示5个回复帖子。只有对登录用户才显示“回复帖子”和“发表话题”

两个按钮,以及回复帖子的表格的显示。对于没有登录的用户,则不会显示。如果登

录的用户的身份是版主,而该帖子又是位于该用户管理的论坛版块下,则会在主题帖

子后提供“屏蔽此帖”和“删除”两个超链接。分别实现屏蔽帖子和删除帖子的功能。

另外在回复的帖子后提供“屏蔽此回复”超链接,实现对回复的帖子的屏蔽操作。

..14

3.1.6显示个人中心页面

图3.6 个人中心页面

在该页面中,显示了用户的个人资料和发表的帖子的信息。当用户点击“编辑个

人资料”的超链接后,会进入修改该个人资料的页面,实现对个人信息的修改。另外

页面上分页显示了用户发表的主题帖子,用户可以这些帖子进行修改和删除操作。

3.2后台页面

用户要进入后台管理页面,必须先进入后台管理的登录页面,使用了Filter来实

现过滤。只有登录成功后,才能进入管理页面。

..15

3.2.1后台登录页面

图3.7 后台页面

登录成功后跳转到后台管理页面,登录失败后还是跳转到本页面。

3.2.2后台管理页面

图3.8 后台管理页面

进入到后台管理后,首先显示的是如上图3.8所示的页面。

..16

3.2.3用户管理页面

图3.9 用户管理页面

点击后台管理页面的左边导航栏的“用户详细信息”超链接即可进入到该页面。

该页面分页显示了用户的部分资料,包括用户名,用户角色,是否禁用。还对每个用

户提供了“启用”,“禁用”,“密码重置”操作按钮。管理员可以进行与之相对应的操

作。这些操作是通过AJAX实现的。

3.2.4公告管理页面

图3.10 公告管理页面

点击后台管理页面的左边导航栏的“公告详细信息”超链接即可进入到该页面。

该页面分页显示了公告的详细信息,包括公共编号,公共内容。管理员可以添加公告,

..17

删除公告。点击页面上的添加图标即可进入到添加公告页面。点击某个公告后的删除

图标即可删除选定的某个公告。

3.2.5论坛版块管理页面

图3.11 论坛管理页面

点击后台管理页面的左边导航栏的“论坛详细信息”超链接即可进入到该页面。

该页面分页显示了各个论坛板块的详细信息,包括论坛版块名称,上级版块名称,版

主。管理员可以对论坛版块进行添加,修改,删除操作。点击页面上的添加图标即可

进入到添加论坛版块的页面,完成添加功能。点击某个版块后面的修改图标即可进入

修改版块信息的页面,在修改页面中可以修改该版块的名称,上级版块,版主。修改

成功后跳转到显示所有论坛版块的页面。点击某个版块后面的删除图标即可删除选中

的论坛版块,如果删除成功就跳转到显示所有论坛版块的页面,如果删除失败就跳转

到显示删除失败信息的页面。

3.3系统设计主要代码及配置文件

3.3.1分页的JavaBean

系统中的大部分JSP页面需要使用分页技术,因此使用一个JavaBean来专门完成

分页的功能。以下是此类的关键代码:

public class PageModel {

..18

//所有的记录数

private int totalRecords;

//查询的结果集

private List list;

//第几页

private int pageNo;

//每页多少条数据

private int pageSize;

}

//提供各成员属性的get,set方法

public int getTotalPages() {

if (totalRecords == 0)

return 1;

return (totalRecords + pageSize -1)/pageSize;

}

}

3.3.2生成验证码的代码

try{

BufferedImage bf=new BufferedImage(70,25,_INT_RGB);

Graphics2D g2=Graphics();

nt(new Color(0,0,255));

ct(0,0,70,25);

nt(new Color(255,255,255));

String str=ameter("num");

ribute("num",str);

t(new Font("Arial",,24));

ring(str,7,20);

for(int i=0;i<10;i++){

int r=(int)(()*255);

..19

}

int g=(int)(()*255);

int b=(int)(()*255);

nt(new Color(r,g,b));

int x1=(int)(()*80);

int y1=(int)(()*30);

int x2=(int)(()*80);

int y2=(int)(()*30);

ne(x1,y1,x2,y2);

e();

(bf,"jpg",putStream());

}catch(Exception e){

}

n(e);

3.3.3系统的配置文件

1)

主要配置的是Tomcat启动时要加载的配置文件。其中有Struts的配置文件

,Spring的配置文件即与applicationContext-*.xml匹配的文件,另外

还配置了Spring中Filter设置了字符集。此外还配置了与AJAX技术相关的DWR的

详细配置信息。

2)

对于本系统为什么选择使用Struts技术,下面列举的这些理由是显而易见的:首

先,它是建立在MVC这种公认的好的模式上的,Struts在M、V和C上都有涉及,但它

主要是提供一个好的控制器和一套定制的标签库上,也就是说它的着力点在C和V上,

因此,它天生就有MVC所带来的一系列优点,如:结构层次分明,高可重用性,增

加了程序的健壮性和可伸缩性,便于开发与设计分工,提供集中统一的权限控制、校

验、国际化、日志等等;其次,经受了实战的检验,使其功能越来越强大,体系也日

臻完善;最后,是它对其他技术和框架显示出很好的融合性

[16]

该系统的Struts的配置文件中主要内容是ActionForm,DispatchAction的详细信息,

..20

以及各页面的跳转路径的控制信息。

3)

本系统中对数据库操作的DAO是通过Hibernate来实现的,该层的事务处理都交

给Hibernate来处理,下面简单的来介绍一下Hibernate。

Hibernate是一种Java语言下的对象关系映射解决方案。它用来把对象模型表示的

对象映射到基于SQL 的关系模型结构中去,为面向对象的领域模型到传统的关系型

数据库的映射,提供了一个使用方便的框架。Hibernate 不仅管理Java 类到数据库表

的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数

据的方法,可以大幅度减少开发时人工使用SQL 和JDBC 处理数据的时间。Hibernate

是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封

装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate

可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以

在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB

的J2EE架构中取代CMP,完成数据持久化的重任。

4) 与Spring有关的三个配置文件

在本系统中,利用Spring的依赖注入机制来实现了DAO对象的依赖注入,这样

一来不用自己来创建对象实例。

在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring

也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给

了你。所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代

码。它们也为Spring中的各种模块提供了基础支持。

以下是与系统有关的三个Spring的配置文件

(1)

在该文件中定义了哪些类的哪些方法参与事务,配置了SessionFactory,事务管理

器,事务的传播特性。

(2)

在该配置文件中配置了各个模块的DAO层的详细信息。

(3)

在该配置文件中配置了各个DispatchAction中DAO对象的注入信息。

..21

3.3.4注册时的验证代码(用到了AJAX技术)

此处是通过DWR框架来实现的,页面中的关键代码如下:

..22

4. 测试

4.1测试方法

由于本系统的设计人员和测试人员都是本人,很了解系统的内部结构和处理过程,

所以测试方式采用的是动态测试方法中的白盒测试。

4.2测试范围

用户的登录;帖子的添加、删除、修改、查询;用户的个人信息编辑;管理员对

用户、论坛版块、公告的管理。

4.3测试报告

测试项目 测试目的 测试结果

不敢肯定系统一

定安全

添加不成功

原因

解决情

仍在解

已解决

用户登录 确保系统的安全性

确保帖子准确无误

的添加

确保帖子信息都删

确保帖子信息准确

的修改

确保查出要求的信

存在一些其它的因素

有些属性没有进行正确

性检查

帖子的添加

帖子的删除 程序运行正常

帖子的修改 程序运行正常

帖子的查询 没有达到要求 SQL语句有误 已解决

个人信息编确保个人信息成功

用户管理

的修改

确保对用户的管理

都能操作成功

确保对论坛的管理

都能操作成功

程序运行正常

程序运行正常

论坛管理 程序运行正常

..23

公告管理

确保对公告的管理

都能操作成功

程序运行正常

..24

总结与展望

在计算机网络飞速发展的今天,论坛已经成为人们网上交流的重要平台,因此对

论坛的研究是十分必要的。设计和开发了一个最基本的基于WEB的论坛系统,可扩

展性很大,科学的开发过程也极有利于系统的扩充与扩展。系统现在采用的是

SQL2000数据库,视需要可以移植到SQL2005或者其它大中型数据库系统环境下,

只需改动少数几个JSP功能模块文件。系统的分析与定义都结合了现在流行的面向对

象方法以及传统的结构分析与设计方法。

严格按工程的方法来设计系统相当重要,不能认为基于Web的数据库管理的论坛

系统很小,可以无需花太多的时间来做系统分析,甚至可以无需经过系统定义而直接

进入系统编码阶段。系统分析过于简单,系统定义过于抽象,则在系统设计与编码阶

段遇到的困难就越多,特别是其中若不得不做一些功能性甚至系统结构性方面的变动,

将面对许多重复性的工作。在设计开发论坛过程中重复工作过多,将会极大地影响系

统开发的积极性,进而影响整个系统的质量。系统分析越充分,系统定义越具体,那

么后续的系统设计与开发工作就越有效率,且系统的质量也越有保障。

对于本论坛来说,实现了现在流行论坛的大部分功能,但也存在很多需要改进的

方面。首先是界面不是很美观,排版布局都是要进过进一步美化的。其次是对用户使

用的友好提示做的还不够,对于某些操作没有成功的话,应该给出相应的错误信息提

示。还有就是可以加入一些功能,如设置精华帖子

[

,设置置顶帖子。还可以对发表帖

子和回复帖子的提交处理时对一些不文明信息进行限制输入。由于时间的关系,又因

为本文的题目是小型论坛系统,故只实现了本文中所列的那些功能,其它的功能有待

后续实现。

回顾设计开发论坛的开发过程,总结起来那就是,软件的开发是相当辛苦的,但

成功以后的喜悦也是非常美妙的,其中投入的心血越多,成功以后你所获得的快乐与

充实感也更多更强。

..25

参考文献

[1] 回相.论坛[J].网络与信息,2007,3:10—12.

[2] 刘海燕.论坛系统[J].计算机与网络,2008,6:23—26.

[3] 潘敏.国内外论坛发展及管理比较研究[J].思想理论教育导刊,2007,7:33—35.

[4] 巴达.从论坛到社区[J].互联网天地,2007,3:3—5.

[5] 游佳、易宇峰.大学生网络论坛使用情况研究[J].内江师范学院院报,2008,5:5—5.

[6] 耿祥义.JSP实用教程[M].清华大学出版社,2005年.

[7] 屈辉立、陈可明.JSP网站编程教程[M].北京希望电子出版社,2005年.

[8] 孙卫琴.Java 面向对象编程[M].电子工业出版社,2006年.

[9] 孙卫琴.精通Struts:基于MVC的Java Web设计与开发[M].电子工业出版社,2004

年.

[10] (德)鲍尔.Hibernate实战(第二版)[M].第二版.人民邮电出版社,2008年.

[11] (美)沃尔斯、布雷登巴赫.Spring in Action[M].人民邮电出版社,2006年.

[12] 孙卫琴.Tomcat与Java Web 开发技术详解[M].电子工业出版社,2005年.

[13] 叶清著.基于JSP和Java组件的动态Web网页的设计与实现[M].第三版.现代机

械出版社,2003年.

[14] 乔普拉(美)著.JSP高级程序设计[M].人民邮电出版社,2005年.

[15] 刘斌编著.精通Java Web 整合开发[M].电子工业出版社,2008年.

[16] 梅玉明.试论网络论坛的舆论导向[J].南昌大学院报,2007,6:3—3.

[17] 丁小文.关注网络论坛舆论,引导青少年网上行为[J].湖北青年管理干部学院院

报,2008,9:4—4.

..26

课程设计成绩评定表

评定项目 内 容 满分 评分 总分

10

40

学习态度 学习认真,态度端正,遵守纪律。

认真查阅资料,勤学好问,提出的问题有一

设计情况

定的深度,分析解决问题的能力较强。

设计方案正确、表达清楚;设计思路、实验

说明书质(论证)方法科学合理;达到课程设计任务

40

量 书规定的要求;图、表、文字表达准确规范,

上交及时。

回答问题回答问题准确,基本概念清楚,有理有据,

10

情况

总成绩

有一定深度。

采用五级分制:优、良、中、及格、不及格

指导教师评语:

签名:

年 月 日


本文标签: 论坛 用户 系统 页面 帖子