通用BBS论坛系统的设计与实现_第1页
通用BBS论坛系统的设计与实现_第2页
通用BBS论坛系统的设计与实现_第3页
通用BBS论坛系统的设计与实现_第4页
通用BBS论坛系统的设计与实现_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要当今社会正处在网络时代,信息化大潮席卷全球,网络正以前所未有的速度在我 国普及开来。网站以其独特的优势在信息化的过程中占有重要的一席。为了方便信息的 交流,在使用JAVA开发了这个快捷、界面友好的交流系统,实现了一个功能相对齐全的 论坛系统,网友可以自由地提出问题以及帮助他人解决问题,或者交流经验。论坛用当今主流的网站开发技术jsp语言进行开发。论坛将采用B/S体系结构,人们通过浏览器就可以访问教学网站的主页,保证的服务器的安全。数据库采用免费,小 巧,易用的mysql数据库。该论坛功能较齐全,在这里可以自由地发表自己的观点和对论 坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对

2、自己有用的知识。该 论坛还有一些特殊的功能,如在线人员显示、强大的搜索功能。本网站严格按照软件项 目开发的流程进行开发,对于网站开发的可行性分析、需求分析、概要设计、详细设计 以及对网站的测试与维护都有详细的论述和实现过程。本套论坛的优点在于它具有强大的可扩展性和可维护性,非常适合网民创建自己的中小型BBS论坛!关键词:BBS , JAVA , MySQL ,JSP第一章引言0第二章需求分析1第三章总体设计3第四章详细设计与实现8第五章系统测试11结论12参考文献14第一章 引言进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。传统的单机版应 用软件正在逐渐退出舞台,取而代之的是支持网

3、络、支持多种数据信息(多媒体)的新一 代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户 端一一服务器的C/S结构,这类软件具有结构严谨,运行效率高,服务器端压力小,安全 性好等优点,被广泛运用于局域网中。而另一种,也是本毕业设计所采用的,是称为浏 览器一一服务器的B/S结构,它的特点是在客户端直接采用了功能强大的浏览器软件作为 界面,其优点在于软件开发效率高,客户端不受操作平台的限制、也不受地域的限制, 网络传输量少,即适用于局域网,更适用于Internet ,而且投资小、见效快,用户可以不必进行服务器方面的投资,而是去租用,甚至是免费使用ISP的服务器资源,因而受

4、到越来越多中小型单位的青睐。随着Internet技术的不断发展,以及用户群爆炸性地增长,网络不再仅仅是信息的被 动获取来源,更成为人们探讨间题、交换观点的场所,其中,网上论坛扮演了极其重要 的角色,随着时间的推移,论坛站点中积存了丰富的信息资源,不但有各类技术资料和 新闻文档,还包含着用户的判断和评论,论坛站点己成为Web信息库的重要组成部分,自网上论坛诞生20多年以来,随着 Web技术的发展,己经由原来简单的电子公告板系统 发展为功能丰富的网上论坛和虚拟社区模式。各种论坛随着网络迅速发展,几乎充实着 生活工作的每一个方面,无论是商界、政界,还是娱乐界,都有各种论坛。互联网正在 融入我们的生活

5、,网络提供给我们的不只是一个获取信息的来源,而且还是一个可以相 互交流的空间,网上论坛正是一种供人们进行交流的网络空间,影响和改变着我们的生活。第二章 需求分析作为一个BBS论坛,它应该具有 BBS所有的一些基本功能,包括:用户登陆功能,用 户取回密码功能,用户浏览帖子的功能以及用户发表、回复、修改和删除帖子的功能 等。接下来,我将详细阐述一下这些功能。(一)、用户登录和注册功能进入登录页面后,对于第一次登陆的用户来说,首先需要注册,单击“新用户注册”按钮即可进入注册界面 ,注册完成后返回登录界面。输入用户名和密码,点击“登 录”按钮,系统即将用户名和密码发送到网络服务器上,与保存在服务器数据

6、库中的信 息进行核对。若核对正确,则进入帖子浏览的界面,若不正确,则重新返回登录界面。(二)、用户找回密码功能在有些时候,我们可能会忘记登录密码,这时就用到了密码找回功能,通过正确的 回答当初注册时的一些信息即可取回密码。(三)、用户帖子的浏览当用户登录成功后便进入该页面,在该页面可以浏览他人已经发表的主题帖子,1、 帖子的总览在主题页面中主要有两部分组成,一是用户的个人信息,再就是他人已经发表的主 题帖子,每个帖子都包含了一些简单信息:主题、作者和时间。鼠标单击主题便进入了 下一页面该帖的详细内容页面。2、查看特定帖的详细信息详细内容页面主要包含了该帖的详细内容和他人对此帖的回复,点击“我要

7、回复” 便可回复此贴。(四)、用户帖子的发布/修改/删除/回复功能2、 帖子的发布登陆成功进入主题页面后,点击“发表新的主题文章”按钮后,便可进入发表帖子的界面。在该页面中填写完信息,点击“发送新的主题”,点击“我要回复”按钮便可对该贴进行回复,如要想对其他回复此贴的人进行回复,可以点击回复人后面的“回复 XX楼”按钮对其进行回复。2、帖子的删除页脚内容1在主题帖子页面中,每幅帖子的最左面都有一个1X1删除按钮,点击此按钮便可删除你所发表的帖子。每个用户(除管理员外)只可删除自己的帖子。(五)、管理员对帖子的查看 /发表/删除功能1、管理员查看或发表帖子3、 管理员删除帖子综上,得到的系统用例

8、图如图2.1所示。图2.1系统用例图第三章总体设计3.1系统框架图3.1功能结构图它可以帮助分析人员发帖回帖流程图是一种表明用户发帖回帖过程的流程图,找出流程中的不合理回路。下面图3.2就用户发帖回帖流程图。:注册用户登陆系统论坛主页发帖模块输入用户名和密码查看论坛详细文章>发表新文章;回复新帖>继续浏览文章图3.2用户发帖回帖流程图3.2数据库设计数据库设计(Database Design )是指对于一个给定的应用环境,构造最优的 数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用 需求(信息要求和处理要求)。数据库的设计通常是以一个已经存在的数据库管

9、理系统为 基础的。通过对业务流程的分析,得到了系统的实体,以及实体之间关系,根据这些实体 与关系之间的联系,得到了系统的E-R图,如图3.3所示。图3.3通用BBS论坛ER图E-R模型用实体间联系反映现实世界事物间的内在联系,而数据表的建立是应用程序开发过程中的非常重要的一个环节,必须清楚每一模块要操纵的数据是那些,以及数据间 的相互关系,然后建立数据表。本系统数据库使用SQL Server 2000,包含以下4个表:用户表(student)、回复表(reply)、讨论表(discuss)。下面分别详细介绍以上各表:表3.1 用户表(student)字段名称数据类型长度是否为空主外键说明idi

10、nt11否主键编码usernamevarchar20否否用户姓名passwordvarchar20否否密码sexvarchar8否否性别agevarchar4否否年龄birthvarchar20否否生日telephonevarchar12否否电话emailvarchar40否否电邮表3.2回复表(reply)字段名称数据回长度是否为空主外键说明idint4否主键编码namevarcha r50否否姓名contentvarcha r50否否内容timevarcha r50否否时间replyvarcha r50否否回复表3.3讨论表(discuss)字段名称数据回长度是否为空主外键说明nameva

11、rcha r50否主键姓名emailvarcha r40否否电邮idint4否外键编码subjectvarcha r60否否题目usernamevarcha r20否否用户姓名contentvarcha r655535否否内容timevarcha r40否否时间第四章 详细设计与实现详细设计阶段就是把解决方法具体化,设计出详细规格说明,包含必要的细节,程序 员可以根据它们写出实际的程序代码,详细设计也称模块设计,在这个阶段将详细地设计每个模块,具体的实现功能。在详细设计过程中,具体的功能实现过程可以按照软件工程中的方法描述中的交互模型具体描述,力求完全符合客户的真实需求。该系统的设计基于以下几

12、个原则:1标准化;2.模块化;3.先进性;4.安全性;5.交互性。4.1 登录页面欢迎来到大连交大论笈音先请登录<%String username = request.getParameter("username");/ 参数传递,用 户名String password = request.getParameter("password");/ 参数传递,密 码PreparedStatement pstmt = null;/ 数据库表达式sql = "select * from Student where username = ? and

13、password= ?"/ SQL语句pstmt = conn.prepareStatement(sql);pstmt.setString(1, username);pstmt.setString(2, password);rs = pstmt.executeQuery();if (rs.next() /request.getSession(true);/ 创建 session保存登录用户到session中session.putValue("username", username);session.putValue("password", pa

14、ssword);session.putValue("userIP", request.getRemoteAddr();session.putValue("enter", "true");/登录成功主题页面response.sendRedirect("MainForm.jsp"); elseresponse.sendRedirect("login.html");/ 登陆失败转向登录页面 %>4.2 注册新会员7'1U",11 曰:Wl二- 下,1!£出| 香由山西

15、<%String username = request.getParameter("username");String password = request.getParameter("password");String sex = request.getParameter("sex");String age = request.getParameter("age");String year = request.getParameter("year");String month = req

16、uest.getParameter("month");String day = request.getParameter("day");String telephone = request.getParameter("telephone");String email = request.getParameter("email");String msg = null;username = convert(username);sql = "select * from student where usernam

17、e='" + username + "”'rs = stm.executeQuery(sql); /查询数据库if (!rs.next() / 如果不存在sex = convert(sex);age = convert(age);String birth;birth = year + "年"+ month + "月"+ day + "日"sql = "insert into student ( username, password, sex, birth, age, telephone ,

18、 email )values('"+ username+ "','"+ password + "','"+ sex+ "','" birth + "','"+ age+ "','"+ telephone + "','"+ email + "')"stm.executeUpdate(sql); / 插入数据库中msg ="恭喜你

19、,已注册成功!"response.sendRedirect("login.html"); else 如果注册用户已存在msg ="你所注册的用户已经存在,请你重新注册!"out.println("<center><font color=green size=5> 提示信息:out.println("<input type=button value=回上一页 onclick=history.back();>");%>第五章 系统测试为了保证测试的质量,将测试过程分成几个阶段,

20、即:代码审查、单元测试、集成测试、确认测试和系统测试。(1)单元测试单元测试集中在检查软件设计的最小单位一模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。(2)集成测试集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。(3)确认测试确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。(4)系统测试软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括恢复测试、安全测试、强度测试和性能测试等。单独对系统的测试主要从以下几方面入手: 功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,

温馨提示

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

评论

0/150

提交评论