美食论坛系统设计毕业论文

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

引言随着网络的发展,论坛已经成为人们日常进行交流的一个不可或缺的空间。人们可以在论坛中谈论喜欢的话题、提出或解答疑问、发布通知和公告等。由于它独特的形式和强大的功能,受到广大网友的欢迎,并成为全世界计算机用户交流信息的园地。1.系统概述目前论坛为人们提供了一个交流空间,用户可以参与到自己的讨论话题中,浏览论坛中的帖子或者发表自己的看法。在论坛中非注册用户只可以浏览论坛中的帖子,不可以对帖子发表评论或发表新的论题;论坛的注册会员可以发布新的论题,并且可以自己的个人信息。1.1系统现状研究目前常见的论坛系统主要有两类:一类是利用Telnet软件登陆站点上,这种方式可以使用同时上站的用户数大大增加,每一个站点可以同时有200人上线,使多人之间的直接讨论成为可能;另一类就是现在许多用户更习惯的,基于web的论坛系统,用户只要连接到Internet上直接利用浏览器就可以进入论坛,阅读其他用户的发言,发表自己的意见。1.2系统开发方法本系统讨论的是一个基于web的关于饮食的论坛系统。本系统需要综合应用数据库,javabean和jdbc等技术。2.可行性分析2.1系统总体目标本系统主要是为了给那些对饮食方面感兴趣的朋友提供一个交流的平台,对有话可说的朋友,你在这里可以进行注册成为会员,参与有关话题的讨论,或提出新的话题,还可以修改个人资料。非注册会员你可以浏览论坛里的帖子,获取对自己有用的信息。另外假如你对某些版块很赶兴趣,你还可以向管理员申请成为某一版块的斑竹,去管理本版块的帖子,对于那些不健康的帖子你可以把它们给删除掉。起到对论坛的维护作用。对于管理员拥有最高权限,可以授予别人为某个版块的斑竹等等。2.2技术可行性分析本论坛是基于web来开发的,主要运用JSP,JDBC,JavaBean等相关技术,以Access为后台数据库、Tomcat5.5为应用服务器。这些应用软件(如JDK、tomcat5.5、eclipse、MacromediaDreamweaverMX2004等都可以在网络上免费下载得来),并且这些软件都是些最常用的网页开发工具,都能够快和好的掌握,并且也学了有关网页开发的课程,所以一些最常用的技术能够比较好的实现,所以对于本系统在技术上是可以达到的。3.需求分析经过以上对系统的调研及可行性分析后,下面对系统在功能上和性能上进行进一步的需求分析。3.1功能需求本系统应该具有信息浏览、信息发布、信息回复、编辑、删除帖子、用户注册、用户管理、个人信息修改、查看个人信息等功能。3.2性能需求设备需求:PC机,Windows98/2000/xp操作系统,PII以上,64MBRAM。服务器、采用Access数据库管理。4.系统设计4.1功能模块结构图SHAPE\*MERGEFORMAT(功能模块结构图)4.2功能模块描述根据权限的不同,用户的操作范围也不相同,系统管理员可以维护此版块的所有帖子的相关信息;注册用户可以发布新帖子、回复帖子、编辑自己发的帖子和浏览版块中的所以帖子;而非注册用户只有浏览帖子的权限。(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是/否4.4详细设计4.4.1登陆模块设计用户登陆模块主要根据用户登陆信息,与数据库信息成功匹配后,获得其相应的操作权限。打开网页,等待用户输入帐号、密码、判断用户输入信息,与后台数据库是否匹配,若不匹配,则刷新页面,等待用户重新输入。4.4.2用户注册模块设计单击登陆页面下方的“注册新用户”将进入注册页面。根据注册相关选项填写所要求填写的信息。其中会进行用户名长度和密码长度验证。如果不符合条件得从新输入。4.4.3用户信息修改设计当进入系统后,你可以单击“修改个人信息”,进行相关信息的修改。4.4.4浏览帖子模块设计当单击论坛某个版块连接时,即可以在打开的页面看到该版块帖子的主题列表,在列表中列出了帖子的作者、回复数量、浏览数量和最后恢复的时间。4.4.5发布帖子模块设计论坛作为一种信息交流的工具,少不了要发表文章,其页面和一般的表单提交差不多,只是增加了一些功能而已。为了用户的方便,在设计时有两个地方可以实现对帖子的发表,一个是在浏览帖子主题列表页面中;另一个是在浏览帖子内容页面中,但这两个所指向的连接是同一个页面。在发表帖子时,将通过JavaBean取得帖子数量,并保存到数据库中。4.4.6回复帖子模块设计回复帖子也是在post.jsp页面完成的。回复帖子都会在原文标题前加上“re”作为帖子标题,对帖子的回复需要获得帖子的主题id,一个帖子id可能有零个或多个回复,这个主题id提交也是在连接中动态生成。4.4.7编辑帖子模块设计如果用户需要修改自己发表的帖子,或者对帖子不满意,那么你可以对帖子进行相应的修改。在浏览帖子页面单击“编辑”连接,既可进入编辑页面,在此可以对标题、内容和图表等信息进行修改,编辑帖子页面。5.系统的组成和实现在本系统中,版块越多,帖子数量越大,就越能吸引人气,所以,论坛都会分为多个模块,在每个版块中发表相应的帖子,而本文将着重介绍论坛帖子的相应操作及管理这一部分,包括浏览帖子,发表帖子,回复帖子,编辑帖子,删除帖子等操作,而具有不同权限的用户可以进行不同的操作非注册用户只能浏览帖子。注册拥护可以发表帖子、回复帖子、可以管理自己所发表的帖子;而管理员可以进行所有的操作。下面将逐一介绍。5.1系统组成本系统包括浏览帖子,发表帖子,回复帖子,编辑帖子,删除帖子等操作,分为技术交流区、美食天地、生活五味、精华区等区域版块。5.2系统的实现dbBean文件实现了数据库的连接,以及各种通用函数的声明。其他网页如果需要连接数据库,只要包含该文件即可。这样可以大大减少代码的重复,便于阅读和维护,由于该文件设计合理,因此所有页面都使用该文件。主页面()5.2.1登陆模块实现当用户在浏览器中输入时,系统将进入登陆页面。主要代码:......%request.setCharacterEncoding(gb2312);session.setMaxInactiveInterval(-1);Stringuser=request.getParameter(user);Stringpw=request.getParameter(pw);Stringsql=select*fromuserwherename='+user+'andpassword='+pw+';ResultSetrs=conn.executeQuery(sql);if(rs.next()){session.setAttribute(rank,rs.getString(rank));session.setAttribute(id,rs.getString(userid));session.setAttribute(name,rs.getString(name));rs.close();conn.close();%jsp:forwardpage=home.jsp/%}else{rs.close();conn.close();%......5.2.2用户注册模块实现单击登陆页面下方的“注册新用户”将进入注册页面。代码如下:...%request.setCharacterEncoding(gb2312);Stringname=;Stringpassword=;Stringsex=;Stringage=;Stringphone=;Stringemail=;Stringaddress=;Stringface=;ResultSetrs=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);Stringsql=select*fromuserwherename='+name+';rs=conn.executeQuery(sql);if(rs.next()){rs.close();out.println(centerh2对不起,该用户名已经被占用,请另选一个用户名!br/h2);out.println(ahref='javascript:history.back()'返回/a/center);}else{sql=insertintouser(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(centerh2恭喜您,注册成功!br/h2);out.println(ahref='login.jsp'返回登录页面/a/center);}conn.close();%...5.2.3用户信息修改实现当进入系统后,你可以单击“修改个人信息”,进行相关信息的修改。代码省略。5.2.4浏览帖子模块实现当单击论坛某个版块连接时,即可以在打开的页面看到该版块帖子的主题列表,在列表中列出了帖子的作者、回复数量、浏览数量和最后恢复的时间。代码见系统;(该图即为技术交流区的相关帖子,其他的版块帖子见系统。)另外浏览

1 / 26
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功