美食论坛系统设计.doc_第1页
美食论坛系统设计.doc_第2页
美食论坛系统设计.doc_第3页
美食论坛系统设计.doc_第4页
美食论坛系统设计.doc_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

引言随着网络的发展,论坛已经成为人们日常进行交流的一个不可或缺的空间。人们可以在论坛中谈论喜欢的话题、提出或解答疑问、发布通知和公告等。由于它独特的形式和强大的功能,受到广大网友的欢迎,并成为全世界计算机用户交流信息的园地。1系统概述 目前论坛为人们提供了一个交流空间,用户可以参与到自己的讨论话题中,浏览论坛中的帖子或者发表自己的看法。在论坛中非注册用户只可以浏览论坛中的帖子,不可以对帖子发表评论或发表新的论题;论坛的注册会员可以发布新的论题,并且可以自己的个人信息。11系统现状研究目前常见的论坛系统主要有两类:一类是利用Telnet软件登陆站点上,这种方式可以使用同时上站的用户数大大增加,每一个站点可以同时有200人上线,使多人之间的直接讨论成为可能;另一类就是现在许多用户更习惯的,基于web的论坛系统,用户只要连接到Internet上直接利用浏览器就可以进入论坛,阅读其他用户的发言,发表自己的意见。12系统开发方法本系统讨论的是一个基于web的关于饮食的论坛系统。本系统需要综合应用数据库,javabean和jdbc等技术。2可行性分析21系统总体目标本系统主要是为了给那些对饮食方面感兴趣的朋友提供一个交流的平台,对有话可说的朋友,你在这里可以进行注册成为会员,参与有关话题的讨论,或提出新的话题,还可以修改个人资料。非注册会员你可以浏览论坛里的帖子,获取对自己有用的信息。另外假如你对某些版块很赶兴趣,你还可以向管理员申请成为某一版块的斑竹,去管理本版块的帖子,对于那些不健康的帖子你可以把它们给删除掉。起到对论坛的维护作用。对于管理员拥有最高权限,可以授予别人为某个版块的斑竹等等。22技术可行性分析 本论坛是基于web来开发的,主要运用JSP,JDBC,JavaBean等相关技术,以Access 为后台数据库、Tomcat5.5为应用服务器。这些应用软件(如JDK、tomcat5.5、eclipse、Macromedia Dreamweaver MX 2004等都可以在网络上免费下载得来),并且这些软件都是些最常用的网页开发工具,都能够快和好的掌握,并且也学了有关网页开发的课程,所以一些最常用的技术能够比较好的实现,所以对于本系统在技术上是可以达到的。3.需求分析经过以上对系统的调研及可行性分析后,下面对系统在功能上和性能上进行进一步的需求分析。31功能需求 本系统应该具有信息浏览、信息发布、信息回复、编辑、删除帖子、用户注册、用户管理、个人信息修改、查看个人信息等功能。32性能需求设备需求:PC机,Windows98/2000/xp操作系统,PII以上,64MB RAM。服务器、采用Access数据库管理。4系统设计41功能模块结构图SHAPE * MERGEFORMAT (功能模块结构图)42功能模块描述根据权限的不同,用户的操作范围也不相同,系统管理员可以维护此版块的所有帖子的相关信息;注册用户可以发布新帖子、回复帖子、编辑自己发的帖子和浏览版块中的所以帖子;而非注册用户只有浏览帖子的权限。(1)登陆模块根据用户输入的拥护名和密码,与数据库中进行匹配,验证账号和密码。(2)注册模块注册新的用户,根据提示填写你的相关信息,再提交到数据库,进行检查,如果已经有此用户名就要重新命名。(3)信息修改可以进行修改你的个人信息。(4)浏览帖子用户可以在此浏览帖子的主题信息。通过单击主题信息的连接,可以进入此贴的主题的内容和浏览此贴的详细内容。(5)发布帖子匿名用户不可以使用此部分的功能,只有注册用户才可以在此模块中发布一个新的主题信息。(6)回复帖子此部分也需要由注册用户使用。用户可以在此部分对一个贴子的信息进行回复。(7)编辑帖子注册用户可以对自己所发的帖子进行编辑。4.3数据库设计此实例中使用Access数据库,通过JDBC-ODBC桥进行数库连接,例如此数据库名为fourm.mdb,该系统中需要建立,存放相关信息。(1)首先创建user表,在此表里存储了包括所有用户的注册信息。userid文本name文本password文本sex文本age文本phone文本email文本address文本rank数字pubnum数字face文本(2)然后创建article表,此表记录了论坛中的所有版块的所有信息id自动编号authorID数字title文本content备注boardID数字reID数字reNum数字pubtime日期/时间feel文本excellent是/否44 详细设计441登陆模块设计 用户登陆模块主要根据用户登陆信息,与数据库信息成功匹配后,获得其相应的操作权限。 打开网页,等待用户输入帐号、密码、判断用户输入信息,与后台数据库是否匹配,若不匹配,则刷新页面,等待用户重新输入。442用户注册模块设计单击登陆页面下方的“注册新用户”将进入注册页面。根据注册相关选项填写所要求填写的信息。其中会进行用户名长度和密码长度验证。如果不符合条件得从新输入。443用户信息修改设计当进入系统后,你可以单击“修改个人信息”,进行相关信息的修改。444浏览帖子模块设计当单击论坛某个版块连接时,即可以在打开的页面看到该版块帖子的主题列表,在列表中列出了帖子的作者、回复数量、浏览数量和最后恢复的时间。445发布帖子模块设计论坛作为一种信息交流的工具,少不了要发表文章,其页面和一般的表单提交差不多,只是增加了一些功能而已。为了用户的方便,在设计时有两个地方可以实现对帖子的发表,一个是在浏览帖子主题列表页面中;另一个是在浏览帖子内容页面中,但这两个所指向的连接是同一个页面。在发表帖子时,将通过JavaBean 取得帖子数量,并保存到数据库中。446回复帖子模块设计回复帖子也是在post.jsp页面完成的。回复帖子都会在原文标题前加上“re”作为帖子标题,对帖子的回复需要获得帖子的主题id,一个帖子id 可能有零个或多个回复,这个主题id提交也是在连接中动态生成。447编辑帖子模块设计如果用户需要修改自己发表的帖子,或者对帖子不满意,那么你可以对帖子进行相应的修改。在浏览帖子页面单击“编辑”连接,既可进入编辑页面,在此可以对标题、内容和图表等信息进行修改,编辑帖子页面。5系统的组成和实现在本系统中,版块越多,帖子数量越大,就越能吸引人气,所以,论坛都会分为多个模块,在每个版块中发表相应的帖子,而本文将着重介绍论坛帖子的相应操作及管理这一部分,包括浏览帖子,发表帖子,回复帖子,编辑帖子,删除帖子等操作,而具有不同权限的用户可以进行不同的操作非注册用户只能浏览帖子。注册拥护可以发表帖子、回复帖子、可以管理自己所发表的帖子;而管理员可以进行所有的操作。下面将逐一介绍。51系统组成本系统包括浏览帖子,发表帖子,回复帖子,编辑帖子,删除帖子等操作,分为技术交流区、美食天地、生活五味、精华区等区域版块。52系统的实现dbBean文件实现了数据库的连接,以及各种通用函数的声明。其他网页如果需要连接数据库,只要包含该文件即可。这样可以大大减少代码的重复,便于阅读和维护,由于该文件设计合理,因此所有页面都使用该文件。主页面()521登陆模块实现当用户在浏览器中输入http:/localhost:8080/login.jsp 时,系统将进入登陆页面。主要代码:. .来源:论文天下论文网 522用户注册模块实现单击登陆页面下方的“注册新用户”将进入注册页面。代码如下:.%request.setCharacterEncoding(gb2312);String name=;String password=;String sex=;String age=;String phone=;String email=;String address=;String face=;ResultSet rs=null;if(request.getParameter(username)!=null) name=request.getParameter(username);if(request.getParameter(password)!=null) password=request.getParameter(password);if(request.getParameter(sex)!=null) sex=request.getParameter(sex);if(request.getParameter(age)!=null) age=request.getParameter(age);if(request.getParameter(phone)!=null) phone=request.getParameter(phone);if(request.getParameter(email)!=null) email=request.getParameter(email);if(request.getParameter(address)!=null) address=request.getParameter(address);if(request.getParameter(face)!=null) face=request.getParameter(face); String sql=select * from user where name=+name+; rs=conn.executeQuery(sql); if(rs.next() rs.close(); out.println(对不起,该用户名已经被占用,请另选一个用户名!); out.println(返回); else sql=insert into user(name,password,sex,age,phone,email,address,rank,pubnum,face) values(+name+,+password+,+sex+,+age+,+phone+,+email+,+address+,0,0,+face+); conn.executeUpdate(sql); out.println(恭喜您,注册成功!); out.println(返回登录页面); conn.close(); %.523用户信息修改实现当进入系统后,你可以单击“修改个人信息”,进行相关信息的修改。代码省略。524浏览帖子模块实现当单击论坛某个版块连接时,即可以在打开的页面看到该版块帖子的主题列表,在列表中列出了帖子的作者、回复数量、浏览数量和最后恢复的时间。代码见系统;(该图即为技术交流区的相关帖子,其他的版块帖子见系统。)来另外浏览帖子主题列表和论坛的其他版块都使用了 分页的功能,这里通过int pagesize=10;语句确定每页帖子的数量,这个数量可以根据自己的需要设置;用pagecount=(recordCount%pageSize=0)?(recordCOunt/pageSize):(recordCount/pageSize+1) 语句计算得到该版块的帖子所站用的总页数;通过for(int i=1;i=pageCount;i+)语句在翻页时获得页数,如第2页、第三页。效果如图:在显示帖子内容这个页面,论坛使用了目前最常用的一种格式,即分为标题和正文部分,通过标题部分和正文部分的颜色不同将不同的帖子划分开来。单击想查看的帖子,即可浏览该帖子的内容。525发布帖子模块实现 论坛作为一种信息交流的工具,少不了要发表文章,其页面和一般的表单提交差不多,只是增加了一些功能而已。为了用户的方便,在设计时有两个地方可以实现对帖子的发表,一个是在浏览帖子主题列表页面中;另一个是在浏览帖子内容页面中,但这两个所指向的连接是同一个页面。在发表帖子时,将通过JavaBean 取得帖子数量,并保存到数据库中。发表帖子的页面为(post.jsp):当用户提交帖子时,该帖子的信息将被保存到.jsp页面中,然后保存到数据库的数据表中,然后页面跳到浏览帖子页面。526回复帖子模块实现回复帖子也是在。Jsp页面完成的。回复帖子都会在原文标题前加上“re”作为帖子标题,如图,对帖子的回复需要获得帖子的主题id,一个帖子id 可能有零个或多个回复,这个主题id提交也是在连接中动态生成。527编辑帖子模块实现如果用户需要修改自己发表的帖子,或者对帖子不满意,那么你可以对帖子进行相应的修改。在浏览帖子页面单击“编辑”连接,既可进入编辑页面,在此可以对标题、内容和图表等信息进行修改,编辑帖子页面。528帖子加精模块设计对于那些好的帖子你可以把它们加入精华区。同理你也可以把它们删除掉。用户对帖子进行删除时,不能删除整个帖子,只能删除单个回复(如果该帖子没有回复时,那么将删除该帖子),而且和编辑帖子一样,只能删除自己所发表的帖子或恢复的帖子(管理员除外),在要删除的帖子回复上单击“删除”连接,将弹出删除确认对话框,确认后,该回复将被删除,并返回到浏览帖子主题列表页面。6 系统测试61系统登陆模块测试(1)测试问题单项目编号 测试类别:集成测试 序号:001产品标识产品中文标识美食论坛-系统登陆第几次测试3测试工程师测试模块/功能/性能系统登陆测试记录单测试时间20

温馨提示

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

评论

0/150

提交评论