文档库 最新最全的文档下载
当前位置:文档库 › 软件工程毕业论文设计_BBS论坛设计

软件工程毕业论文设计_BBS论坛设计

怀化学院本科毕业论文

(设计)诚信声明

作者郑重声明:所呈交的本科毕业论文(设计),是在指导老师的指导下,独立进行研究所取得的成果,成果不存在知识产权争议。除文中已经注明引用的内容外,论文不含任何其他个人或集体已经发表或撰写过的成果。对论文的研究做出重要贡献的个人和集体均已在文中以明确的方式标明。本声明的法律结果由作者承担。

本科毕业论文(设计)作者签名:

年月日

目录

摘要 (1)

关键词 (1)

Abstract (1)

Keywords (2)

前言 (2)

1 系统技术及运行环境 (3)

1.1 JSP技术简介 (3)

1.2 JAVABEAN技术简介 (4)

1.3 JDBC技术简介 (4)

1.4 TOMCAT技术简介 (5)

1.5运行环境 (5)

2 需求分析 (6)

2.1 编写目的 (6)

2.2 任务目标 (6)

2.2.1基本性能 (6)

2.2.2开发目标 (7)

2.2.3 应用目标 (7)

2.3选择编程语言 (7)

2.3.1 JSP与ASP的比较 (7)

2.3.2 JSP的特点与优点 (8)

3系统设计 (10)

3.1系统设计思想 (10)

3.1.1 网上论坛系统说明 (10)

3.1.2 网上论坛系统总体分析 (10)

3.2 数据库设计思想 (11)

3.3 各单元模块设计 (13)

3.3.1用户注册登陆功能 (13)

3.3.2会员发贴与回复功能 (14)

3.3.3管理员管理帖子与用户管理功能 (15)

4 编码实现 (17)

4.1 功能总体说明 (17)

4.1.1 功能总体说明 (17)

4.1.2主要功能流程 (18)

4.2各个功能模块的实现 (18)

4.2.1数据库的连接 (18)

4.2.2用户登陆与注册模块的实现 (20)

4.2.3分页显示的功能实现 (24)

4.2.4 发表与回复功能模块实现 (25)

4.2.5后台管理模块的实现 (28)

5 系统测试 (32)

总结 (33)

参考文献 (34)

致谢 (35)

基于JSP的BBS论坛管理系统

摘要

为了方便信息的交流,在结合动态服务网页(JSP)和MYSQL 技术之下开发了这个快截、界面友好的网上交流系统。论坛使用动态服务网页(JSP)技术建设论坛的骨干框架,使用MYSQL制作系统的数据库,实现了一个功能相对齐全的论坛系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。

该论坛功能较齐全,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的知识。该论坛还有一些特殊的功能,强大的搜索功能等。

关键词

动态服务网页;论坛;用户管理

BBS forum Management System Based on JSP

Abstract

In order to facilitate people information the exchange, in unified JSP and MYSQL under the server technology has developed this quick truncation, the contact surface friendly system. The system use the JSP technology construction the main frame, use MYSQL as the systems database, realized a forum system which function relatively completely, the net friend has been possible freely to propose the question as well as helped other people to solve the problem, or exchange experience.

This forum function is complete, everyone may freely express his viewpoint in here and express the opinion to the subject, we also may promptly solve to net friend's question, and gain the useful knowledge from there. This forum also has some special functions, for example the power search function.

Keywords

Java Server Pages; BBS; user managemen t

前言

Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。作为Internet上一种先进的,易于被人们所接受的信息检索手段,World Wide Web(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。

我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。一些站点已经在这方面做出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户

了解一个站点前让其对站点进行设置,其结果未免有些粗糙。于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一个页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户做出任何额外工作的情况下实现了为用户量身订做的个性化页面。

要实现这样的功能,离不开后台数据库的支持。用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。本文中数据库服务器端采用了MYSQL数据库并以先进的JDBC技术进行数据库存取等操作,使Web与数据库紧密联系起来。

本文作者主要完成Web服务器端的用户管理、帖子管理、数据库管理、浏览和查找功能等设计、实现与完善以及整个实验网站的组织建立和测试工作。

1 系统技术及运行环境

1.1 JSP技术简介

JSP是服务器端的脚本语言,是以SERVLET为基础开发而成的动态网页生成技术,它的底层实现是JA V A SERVLET。

JSP(JA V A SERVER PAGES)由HTML代码和潜入其中的JA V A 代码所组成。服务器在页面被客户端请求以后对这些代码进行处理,然后将生产的HTML页面返回客户端的浏览器

JSP的特点是面向对象、跨平台、和SERVLET一样稳定、可以使用SERVLET提供的API,同时克服了SERVLET的缺点。

在使用JSP时一般和JA V ABEANS结合使用,从而将界面表现和业务逻辑分离。

1.2 JAVABEAN技术简介

JA V ABEAN是基于JA V A的组建模型,有点类似于MICROSOFT 的COM组建。

在JA V A平台中,可以无限扩充JA V A程序的功能,通过JA V ABEAN的组合可以快速生产新的应用程序。

对于程序员来说,最好的一点就是JA V ABEAN可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。

JA V ABEAN通过JA V A虚拟机(JA V A VIRTUAL MACHINE)执行,运行JA V ABEAN最小的需求是JDK1.1或者以上的版本。

JA V ABEAN传统的应用在于可视化的领域,如AWT下的应用。自从JSP诞生后,JA V ABEAN更多的应用在了非可视化领域,在服务器端应用方面表现出了越来越强的生命力。

1.3 JDBC技术简介

JDBC是一组API,定义了用来访问数据库源的标准JA V A类库,使用这种类库可以使用一种标准的方法、方便地访问数据库资源。

JDBC的目标是使应用程序开发人员使用JDBC可以连接任何提

供了JDBC驱动程序的数据库系统,这样就使得程序员无须对特定的数据库的特点有过多的了解,从而大大简化了和加快了开发过程。

JDBC API为访问不同的数据库提供了一种统一途径,像ODBC 一样,JDBC为开发者屏蔽了一些细节问题。

另外,JDBC对数据库的访问也具有平台无关性。

1.4 TOMCAT技术简介

在已JA V A技术为的WEB开发领域中,TAMCAT是许多JA V A程序员相当喜爱的开放源代码产品,它附属在APACHE SOFTW ARE FOUNDATION 所主导的JAKART项目内。由于TAMCT是SERVLET 与JSP技术的参考实现(REFERNCE IMPLEMENTATION),

所以它不但可以当作独立的WEB服务器,也可以结合其它的WEB 服务器,只担任SERVLET容器或JSP容器的角色。

1.5运行环境

为了保证BBS论坛管理系统运行的高效性和可靠性,服务器应具有较高的软硬件配置,客户端的要求不是很高。此应用程序可广泛运行于国际互联网即Internet,也可适用于内部的局域网。其运行要求如下:

软件环境:

客户端:Windows95/98/2000/XP,Internet Explorer(IE)等。

服务器端:Windows NT/Windows2000,Tomcat 5.0,JDK 1.5及其以上

版本,IE等;

数据库:采用MYSQL,运行于服务器端。

硬件环境:

服务器CPU:PIII 500以上,内存:512M以上。

客户机CPU:P200MMX以上,内存:32M以上。

2 需求分析

2.1 编写目的

当今网络技术逐渐渗入社会生活各个层面,以前网站上的论坛管理系统要用户登陆以后才能进行相关访问及互动。而随着网络互联技术的进步,现在网站投票只需打开网页就可进行论坛留言。论坛对象是很多的,各个层次都可进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击相应就可进行。网上论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型网站论坛管理系统,用户可选择自己的看法。所以我提出了本课题的研究。

2.2 任务目标

2.2.1基本性能

系统包括主要的功能:新用户的注册,会员登录,管理员删除用户,管理员删除帖子和修改帖子,查询主题,和查询用户这些功能,游客浏览留言,会员新增主题,会员留言回复,查询主题这些功能,

可以满足一般的用户需要。

2.2.2开发目标

这个系统预期的目的是为了做成交互式的网页,方便客户端和浏览器端之间的交流。通过论坛,人们能够相互交流沟通,把疑惑在论坛里公布,大家献计献策,共同学习,共同进步。

2.2.3 应用目标

网上论坛系统是一个会员登录留言系统。网上游客能够浏览论坛上的帖子,并且能够注册成为用户。论坛注册会员能够发表帖子,让大家积极参与讨论。论坛管理员能够便于管理论坛,包括浏览游客留言,审核留言,对于不健康或是不利于社会稳定的留言能进行删除操作。

2.3选择编程语言

2.3.1 JSP与ASP的比较

总的来讲Java Server Page(JSP)技术和Microsoft 公司提供的Active Server Pages(ASP)技术在技术方面有许多相似之处:两者都是基于WEB应用实现动态交互网页制作提供技术环境支持。两者都能为程序开发人员提供实现应用程序的编制与自带组建设计网页从逻辑上分离的技术。而且两者都能替代CGI使网站建设与发展变得较为简单与快捷。

1).相同之处

都是运行于服务器端的脚本语言,两者都是动态网页生成技术,这两项技术都是由HTML来决定网页的版面,都是在HTML代码中混合某种代码,有语言引擎解释执行程序代码。HTML主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。

2).不同之处

JSP是由SUN公司推出的一项技术,是基于JavaServlet 以及整个JA V A体系的WEB开发技术,利用这项技术可以建立先进、安全和跨平台的动态网站。ASP是MS公司推出的技术只能在MS的平台上运行,无法实现跨平台,也无安全性保障。

ASP下的编辑语言是VBScript 之类的脚本语言,而JSP使用的是JA V A。

ASP与JSP还有一个更为本质的区别:两种语言引擎用完全不一样的方式来处理也面中潜入的程序代码。在ASP下,VBScript代码被ASP引擎解释执行。在JSP中,代码被编译生产Servlet并有JA V A 虚礼机执行,这种也面仅在对JSP也面的第一次请求时发生。

2.3.2 JSP的特点与优点

综合而言,JSP技术具有下面的特点:

1)write once run anywhere

JSP技术继承了JA V A先天性的先进概念“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 兼容的接口,即共享网页的打包功能使其完全的工业标准化。这种基于组建的模式能够有效的提高应用程序的开发效率。因为这种模式能

够使开发人员利用快捷的子组建快速创建模板应用程序。然后再整和一些附加功能将其打包成一个JA V ABEAN组建。

5)易于维护性

基于JSP技术的应用程序比基于ASP的应用程序更易于维护和管理。脚本语言都很好服务于小的应用程序但不能适宜大型的复杂的应用程序,因为JA V A是结构化的,它比较比较容易创建和维护庞大的组建化的应用程序。

3系统设计

3.1系统设计思想

3.1.1 网上论坛系统说明

此网上论坛中三种不同角色游客、注册用户管理员分别可现:游客:查看帖子、注册新用户。

注册用户:查看帖子、发新帖子、回复信息、查询主帖。

管理员:帖子管理、用户管理、数据库管理。

3.1.2 网上论坛系统总体分析

通过上面的功能说明,我们可以将论坛的制作分为四大部分:(1)会员注册和登陆模块:

这个模块的功能,就是新来网友可以填写注册资料,通过审核后便成为本论坛的正式会员,并可以以会员身份登陆论坛。

(2)文章显示模块:

显示所有会员最新发表的一些文章主题。

(3)发表文章模块:

为会员提供发表文章的地方,以及回复主题等。

(4)论坛与用户管理模块:

版主以上职务可以进行对文章和用户进行处理,查询,修改,删除等。了解了具体的功能需求后,就可以按模块的开始论坛的设计了。当然,这些模块的只是在功能上对论坛结构的划分,实际上并不能够完全的把他们独立出来进行设计。对于这种较小的应用,也没有必要进行完全的模块化设计,在良好的规划下直接写程序代码或许来的更为简单一些。

3.2 数据库设计思想

在建设网站系统之前,我们必须对系统所用到的数据进行大致的分类和具体的结构设计,既要做到清晰明了,又要能适应系统各项功能的调用,而不至于产生结构上的逻辑混乱,保证关键数据在意外情况下不会被破坏,可以说数据库是系统的重中之重。

数据库设计要遵循一些规则,一个好的数据库满足一些严格的约束和要求。尽量分离各实体对应的表,一个实体对应一个表,分析该实体有哪些属性,对应有些什么字段,以及各实体之间的联系。实体、属性与联系是进行概念设计时要考虑的三个元素,也是一个好的数据库设计的核心。

从实际出发,经过仔细地设计,得到各表的设计如表3.1——3.3

所示。

表3.1 帖子信息表article

表3.3管理员信息表adminuse

3.3 各单元模块设计

3.3.1用户注册登陆功能

此部分是实现用户的注册功能。通过填写注册资料,正确填写后,点击注册按钮后便可注册成为正式的会员。如图3.1

图3.1 注册

用户资料填写正确就可以注册了。而且对其用正则表达式做了一些限制。用户名只能是3-12位单字字符,而且不允许注册重复的用户名。性别只能选择男或女其中一个。密码最多不能超过12位,两次密码必须输入一致,否则不可以注册。E-mail必须输入有效的邮箱地址,以便日后能使用到论文的各种功能。只要用户按照出现提示信息输入进去就可以了。用户注册成功后就可以使用会员所拥有的一切功能了。

3.3.2会员发贴与回复功能

此部分实现会员的发表新帖以及回帖等功能。

发表帖子会员只针对会员开放,如果想发表新的主题,必须登陆如果没有账号必须注册以后便可直接点击发表帖子按钮。进到发表帖子页面后,首先要写自己想发表的主题,然后填写作者和正文。如果没有登陆直接点击发表主题,则会直接跳到用户登陆页面。

发表主题如图3.2所示:

图3.2 发表新贴

回复主题界面如图3.3所示:

图3.3 回复主题

发表成功回到显示主题页面再点击主题会看到主题贴的相关内容和回复内容。回复帖子只针对会员开放,游客不可以回复主题。回复内容比较全面,可有表情,也可以设置字体大小颜色,段落格式等。如果没有登陆直接点击回复则直接跳转到登陆页面。

3.3.3管理员管理帖子与用户管理功能

此部分主要是管理员对论坛的帖子和会员进行综合管理,删除、编辑、查询、等等。普通会员是不可以进行此操作的。管理员登陆界

面如图3.4所示:

图3.4 管理员登陆

首先用session判断管理员是否登陆,如果没有登陆直接在浏览器里面输入管理界面的地址则不能对其内容进行操作。这样保证了数据的安全性。管理员登陆以后可以对有些文章内容有地方不足时,可以对其进行编辑修改,当然对于不好的帖子或者就是灌水的帖子,严重的可以直接删除了。帖子都是按照发表时间和回复时间排列的,时间最新的帖子则排在最前面,时间越旧的就越靠后面。

如果登陆成功则进入管理员管理页面,如图3.5所示:

相关文档