毕业设计论文讨论区BBS论坛系统的设计与实现.doc

上传人:sccc 文档编号:4880808 上传时间:2023-05-21 格式:DOC 页数:49 大小:413.02KB
返回 下载 相关 举报
毕业设计论文讨论区BBS论坛系统的设计与实现.doc_第1页
第1页 / 共49页
毕业设计论文讨论区BBS论坛系统的设计与实现.doc_第2页
第2页 / 共49页
毕业设计论文讨论区BBS论坛系统的设计与实现.doc_第3页
第3页 / 共49页
毕业设计论文讨论区BBS论坛系统的设计与实现.doc_第4页
第4页 / 共49页
毕业设计论文讨论区BBS论坛系统的设计与实现.doc_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《毕业设计论文讨论区BBS论坛系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文讨论区BBS论坛系统的设计与实现.doc(49页珍藏版)》请在三一办公上搜索。

1、讨论区BBS论坛系统的设计与实现摘 要 随着网络的发展,大家的生活得节奏变得越来越快了,大家使用电脑的时间越来越多了,人们之间面对面的的交流时间越来越少了,使得人与人的关系变得疏远,这种精神上的聚餐越来越少了。为了解决由于网路发展而疏远了人与人之间的距离,有种新的交流工具发展起来了,就是bbs论坛。而在论坛里面,讨论区BBS论坛,是bbs论坛的核心的部分,也是论坛的重要功能,让我们能够互相交流和讨论,谈论区是为了论坛的注册用户能够互相交流,用户可以发帖子,也可以对帖子回复,也可以对回复帖子的进行回复。也就是你可以随心所欲的向众人发表你的言论,宣传你的观点,立场,而且也可以方便的赞成或者是反对别

2、人的观点和言论,同时,你也可以知道,有多少人对你的贴子做出了反应,乃至别人对你网上人格的评价,有些论坛的功能更为完善,上面附带的社区功能可以让你象在真实世界里一样购买从衣物到日常用品等各种物品。关键词:BBS管理系统;Jsp;Servlet;MyEclipse;MySQLBBS Forum Discussion Design and ImplementationAbstractWith the development of network ,Everyones life become more and more fast-paced,We use the computer more and m

3、ore, People face-to-face exchanges between the time to become less and less,Makes the relationship between people become alienated, This spiritual gatherings are becoming fewer and fewer. In order to address the development of alienation as a result of the network distance between the people, Endemi

4、c to the new communication tools developed, and is the forum bbs. Inside in the forum to discuss the district BBS forums, bbs forum is part of the core, The Forum is also an important function, so that we can exchange and discussion forum to talk about the districts registered users to exchange, the

5、 user can post messages, you can reply to posts may also be carried out on the back of the back post. That is, you may want to express your people freedom of speech, Promotional point of view of your position, but also in favor of convenience or are opposed to other peoples views and freedom of spee

6、ch, At the same time, you can know how many people you made a response to the post, and even others on your online personality assessment Some of the functions of a more perfect forum for the top side of the community feature allows you, as in the real world, like the purchase of daily necessities f

7、rom clothing to a variety of items。Keywords: BBS Management system; JSP; MyEclipse; MySQL目 录引言11.1BBS管理系统的发展11.2BBS管理系统的现状11.3该系统的主要研究内容22.1Jsp与JavaBeans技术32.2JavaScript技术42.3JDBC技术52.3.1 JDBC数据访问接口52.5.2JDBC的体系结构52.5.3 JDBC访问后台数据库的技术实现方法62.4开发工具选择63 BBS管理系统需求分析93.1系统需求分析93.2系统性能指标94 BBS管理系统分析设计与实现1

8、04.1BBS管理系统设计总体要求104.2数据库设计104.3系统下面是建立用户功能设计144.3.1主要功能设计144.3.2 用户功能设计144.3.3 系统管理员功能设计144.3.4BBS管理功能设计164.4 关键技术的实现164.4.1 汉字显示的实现164.4.2 分页功能的实现194.4.3 页面间参数传递的实现214.4.4 数据库连接技术225.1系统环境配置275.1.1系统对硬件环境的要求275.1.2系统对软件环境的要求275.2主要功能模块的实现285.2.1 发表帖子功能285.2.2留言回复功能295.2.3模糊查询功能305.2.4与留言者交流功能实现315

9、.2.5用户鉴定功能315.2.6 论坛管理模块33结 论34致 谢35参考文献36附录1 外文参考文献(译文)37附录2 外文参考文献(原文)40441 概 述1.1 BBS管理系统的发展 大约是从1991年开始,中国开始了第一个BBS站。经过长时间的发展,直到1995年,随着计算机及其外设的大幅降价,BBS才逐渐被人们所认识。1996年更是以惊人的速度发展起来。中国的BBS站,按其性质划分,可以分为2种:一种是商业BBS站,如新华龙讯网;另一种是业余BBS站,如天堂咨询站。由于使用商业BBS站要交纳一笔费用,而商业站所能提供的服务与业余站相比,并没有什么优势,所以其用户数量不多。多数业余B

10、BS站的站长,基于个人关系,每天都互相交换电子邮件,渐渐地形成了一个全国性的电子邮件网络China FidoNet(中国慧多网)。于是,各地的用户都可以通过本地的业余BBS站与远在异地的网友互通信息。这种跨地域电子邮件交流正是商业站无法与业余站相抗衡的根本因素。1.2 BBS管理系统的现状中国的BBS站,单线站还占大多数。随着计算机的普及,特别是调制解调器的大量使用,BBS的活动将会进一步高涨。但是,随之而来的拨号难和抢线难的问题将会加剧。尽管BBS站台的数量在不断增长,但这种增长的幅度总也赶不上用户群的增长。许多人同时拨号一个站台,不可避免地发生冲突。每回要拨上几十次乃至上百次才能成功连上一

11、个BBS站的状况已经成为困扰今日中国BBS用户的一个难题。随着BBS活动的深入,中国已经出现了一些多线站,一次可以允许2人以上同时访问。 (BBS的发展过程中,也出现了一些问题。由于中国使用的BBS架站软件,都是从国外引进的,因此没有必要的中文说明。虽然一些热心的站长翻译了一些资料,但是仅靠这些是远远不够的。另外,有些站台的设立是相互抄袭,所以在结构上难免有雷同之处。1999年是中国网络的发展年。但是,应该清醒地认识到,一些BBS站并没有走上“简单、易用”这一层次。包括一些厂商架设的BBS站,实用性还需要加强。中国的BBS站将向着个性化和专业化的方向发展。1.3 该系统的主要研究内容分析了目前

12、普遍的bbs网站,研究了Java分布式框架J2EE,Web容器,组件生命周期。研究JSP技术,包括如何进行基于JSP应用开发以及在JSP服务器上的发布运行。深入研究了基于multipart/form-data的form传送协议,以及如何在该协议下进行通信。研究了如何基于JavaScript开发更丰富的人机交互界面。研究了J2EE框架中数据源的2种配置方式,使用容器管理连接池,直接使用JDBC。2 系统开发的关键技术2.1 Jsp与JavaBeans技术Java语言诞生于20世纪90年代的初期,最初是以智能家电的芯片语言出现的。但是很快,人们发现了它有更广阔的用武之地,由于它适用于Interne

13、t环境,引起计算机界的广泛关注,迅速发展成计算机网络编程语言。Java语言备受推崇,因其确实可称得上是新一代编程语言,具有众多优点,它简单、面向对象、可移植、与硬件无关、系统强健安全、具有很高的性能,并提供了分布性、多线程、动态性的支持。JSP ( Java Server Pages)是由Sun公司在java语言上开发出来的一种动态网页制作技术,JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果,使您可以将网页中的动态部分和静态的HTML相分离。 将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使

14、用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。 强调可重用的组件绝大多数JSP页面信赖于可重用的、跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,井使得这些组件为更多的使用者或者客户团体所使用6。 采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在生成与JSP相关的XML标识的动态内容时所需要的。标准的JSP标识能够访问和实

15、例化JavaBeans组件、设置或者检索组件属性、下载Applet,以及执行用其他方法更难于编码和耗时的功能。 健壮性与安全性由于JSP页面的内置脚本语言是基于Java编程语言的,且都被编译为JavaServlet,它就具有Java技术的所有好处,包括健壮的存储管理和安全性7。 良好的移植性作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,可以使用自己所选择的服务器和工具,而且更改工具或服务器并不影响当前的使用。 企业级的扩展性和性能当与Java2平台,企业版(J2EE)和EnterpriseJavaBeans

16、技术整合时,JSP页面将提供企业级的扩展性和性能,这对于虚拟企业中部署基于Web的应用是必需的。Javabean是可复用的平台中立的软件组件,可以在软件开发工具中被直观地操作。基本说来,Javabean可以看成一个黑盒子,即只需知道其功能而不管其内部结构的软件设备。用户可以使用JavaBeans将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBeans、applet程序或者应用来使用这些对象。用户可以认为JavaBeans提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。JavaBeans

17、将Java语言本身所具有的“一次编写,到处运行”特性沿用到代码组件Bean上,使Bean也具有平台无关性。JavaBeans通过封装属性和方法成为具有某种功能的软件模型,运营这种模型,能够使软件开发人员快捷地利用子组件来创建模板应用程序,然后整合一些附件功能便可使用。JavaBeans组件可以访问数据库,用一个Bean把常用的数据库功能都封装起来。JSP对于在Web应用中集成JavaBeans组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为JSP应用带来了更多的可伸缩性。JavaBeans组件可以用来执行复杂的计算任务,或者负责与数

18、据库交互以单击及数据提取等。2.2 JavaScript技术JavaScript是一种基于对象(Object)和事件驱动(Event Driven)并具有安全性能的脚本设计语言,它可以镶嵌在HTML代码中的特殊类型代码,这些代码可以由浏览器解释执行,它使网页开发者可以更有效地控制页面。而且JavaScript是一种面向对象的语言,可以操控浏览器脚本对象模型所支持的各种标准对象,如当前窗口、浏览器本身信息、URL、HTML文档等等,并能对用户触发事件做出即时响应,诸如鼠标、表单操作等,而且这些都不需要客户机与服务器的交互通信,既为用户提供了更快速的操作,又减小了服务器端的负担,十分适合于编制交互

19、网页和较小的编程任务。JavaScript是一种解释性语言,它不需要对JavaScript程序进行预先编译而产生可执行的机器代码,只是在程序执行时才由一个内置于浏览器中的JavaScript解释器将源代码动态地处理成可执行代码。目前流行的浏览器都具有这种解释器。从Web发布角度来看,它的这种特性使它比编译性语言更加易于编程和使用。由于JavaScript是由Java继承而来的,因此它是一种面向对象的程序设计(OOP)语言。JavaScript中的对象有两个组成部分状态和行为,或者说变量(属性)和函数(方法)。可以用JavaScript的对象来模拟现实生活中的各种实例,从而大大方便了程序的设计。

20、利用对象的继承性,可以使很多精心设计的代码能够重新使用,从而减少了程序设计人员的重复工作量而节省了时间。JavaScript不需要依赖特定的机器和操作系统,独立于操作平台,这点与JSP语言一样,都具有跨平台性,它们可以在不同的平台上紧密结合,协同工作。JavaScript还具有占有系统和网络资源小的优点。所以,在JSP页面内镶嵌JavaScript实现一些检验功能,会使Web页面更富于交互性、响应速度更快、效率更高。 JDBC技术2.1.1 JDBC数据访问接口JDBC(Java Database Connectivity)是用于执行SQL语句的Java API15。它由一组用Java编程语言

21、编写的类和接口组成,为Java应用程序与各种不同数据库之间对话提供了一种便捷的方法,使得开发人员能够用纯Java API来编写具有平台无关性的数据库应用程序。JDBC的出现使Java程序对各种数据库的访问能力大大增强。通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。2.3.2 JDBC的体系结构目前,应用程序与数据库信息交换己经非常普遍。因此,一个程序设计语言对数据库开发能力的大小,决定着该语言的流行程度。在JDK1.1版本之前,Java语言提供的对数据库访问支持的能力是很弱的,编程人员不得不在Java程序中加入C语言的ODBC (Open Database Con

22、nectivity)函数调用,这使得Java程序的跨平台发布能力受到很大的限制。JDBC的出现使Java程序对各种数据库的访问能力大大增强。它为Java定义了一个“调用级”(cal-level)的SQL接口。这意味开发人员可以很方便地将SQL语句传送给几乎任何一种数据库16。JDBC的体系结构如图2.1所示:应用程序数据库应用程序数据库应用程序数据库JDBC APIJdbc driver manager数据库驱动图2.1 JDBC体系结构从图中可以看出,JDBC API的作用就是屏蔽不同的数据库驱动程序之间的差别,使得程序设计人员有一个标准的、纯Java的数据库程序设计接口,为在Java中访问

23、任意类型的数据库提供技术支持。驱动程序管理器(Driver Manager)为应用程序装载数据库驱动程序。数据库驱动程序是与具体的数据库相关的,用于向数据库提交SQL请求。 2.3.3 JDBC访问后台数据库的技术实现方法JDBC (Java Database Connectivity)是Java语言访问后台数据库的API。JDBC继承了Java语言的所有特点。并且,很多数据库系统自带JDBC驱动程序,Java程序就可通过这些程序与数据库相连。但是,JSP&Servlet并不直接使用JDBC技术访问数据库系统,而是把参数传递给事先编好的JavaBean EJB组件,由它们对数据库进行操作。JD

24、BC本身主要完成以下三件事件:与数据库建立连接;发送SQL语句;处理结果。JDBC的结构可分为两层:第一层是JDBC API,JDBC API是一系列的抽象接口,应用程序是首先通过它实现数据库的连接,执行SQL声明、获得返回结果;第二层JDBC Driver API主要负责与第三方驱动程序通讯,这些驱动程序才真正连接到数据库。2.3 开发工具选择本系统使用的开发工具主要有tomcat、MyEclipse和mysql数据库。1) Tomcat服务器本系统在Windows XP操作系统下整合Apache和Tomcat,整合后的服务器的处理能力更强大。Apache是最流行的Web服务器端软件之一。快

25、速、可靠、可通过简单的API扩展,Perl/Python解释器可被编译到服务器中,完全免费,完全源代码开放。Apache还拥有以下的特性:1 几乎可以运行在所有的计算机操作系统上。2 简单而且强有力的基于文件的配置(HTTPD.CONF)。3 支持通用网关接口(CGI)和虚拟主机。4 可以通过WEB浏览器监视服务器的状态,可以自定义日志。5 具有用户会话过程的跟踪能力。Tomcat本身就是一个Web服务器,其支持JSP和Servlet,但由于Tomcat主要用来开发和调试,而作为商业应用则其功能还略显单薄,因此我们将其作为功能强大的商业应用Web服务器Apache HTTP Server的一个

26、附加软件,将两者的功能整合起来,以建立具有完美功能的JSP网站。2) MyEclipse开发工具Eclipse平台由数种组件组成:平台核心(platform kernel)、工作台(workbench)、工作区(workspace)、团队组件(tram component)以及说明组件(help)。Eclipse平台的目的,是提供多种软件开发工具的整合机制,这些工具会实变成Eclipse外挂程序,平台必须用外挂程序加以扩充才有用处。Eclipse设计美妙之处,在于所有东西都是外挂,除了底层的核心以外。这种外挂设计让Eclipse具备强大扩充性,但更重要的是,此平台提供一个定义明确的机制,让各种

27、外挂程序共通合作(透过延伸点extension points)与贡献(contributions),因此新功能可以轻易且无缝地加入平台。功能上的便捷是我首选的一个原因,切不用考虑太多版本的因素。3) Mysql数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。 mySQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以

28、允许你存储记录文件和图像。 MySQL 主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,我们一直都在使用MySQL,其环境有超过 40 个数据库,包含 10,000个表,其中500多个表超过7百万行,这大约有100 个吉字节(GB)的关键应用数据。4) HTMLHTML的英文全称是Hypertext Markup Language,中文译为“超文本标记语言”。“超文本”就是指页面内可以包含图片,联接,甚至音乐,程序等非文字的元素。在几年前作为SGM

29、L的一个子集开发的。一个HTML文件中包含了所有将显示在网页上的文字信息,其中也包括对浏览器的一些指示,如哪些文字应放置在何处,显示模式是什么样的等。如果你还有一些图片、动画、声音或是任何其它形式的资源,HTML文件也会告诉浏览器到哪里去查找这些资源,以及这些资源将放置在网页的什么位置。浏览的网页就是由HTML语言编写出来的。虽然HTML是一种语言,但HTML不是程序语言,如 C+ 和 Java 之类,它只是标示语言,你只要明白了各种标记的用法便算学会了HTML.HTML 的格式非常简单,只是由文字及标记组合而成,因此任何文本编辑器都可以制作HTML页面。在编辑器中输入html代码即可完成对网

30、页的设计,如果在其中加入VB,JAVA等脚本文件以及数据库连接有关的语句指令,便可对已知数据进行查询,从而生成动态网页的一部分。3 BBS管理系统需求分析3.1 系统需求分析BBS 系统的作用在于提供用户相互交流的空间,这种交流的方式即浏览文章和发表文章以及对文章的评价。因此,对于文章的管理是BBS系统的一个核心功能。发表文章的权利只能给予特定的人群。否则容易失去次序,基于同样的考虑,删除文章的权力也只能提供特定的人群。因此,用户的划分应该成为BBS系统的一个核心的思想,系统将用户划分为游客,用户,管理员三类,他们的权限不同,各司其职,其中管理员拥有最高的权利,可以对用户,论坛,文章三大对象进

31、行增加,删除及修改的操作BBS系统将用户划分为游客,用户,管理员3类,他们的权限不同,能够使用的功能叶不同。对于系统来说,需要实现的功能总体来说分为以下两大模块。 前台模块提供给所有用户使用。不论是论坛的注册用户,还是普通的浏览者,都可以进入其中。区别在于用户的权限不同。所允许使用的功能也有所不同。后台模块提供给管理人员(包括管理员很版主)使用,以对用户,论坛及文章进行管理维护。普通用户如果试图使用这一模块将被系统拒绝。该系统的使用图,如下图所示: 管 理 员用户管理论坛管理帖子管理BBS系统用 户 注册登录回复发表帖子注销回复图3.1系统功能模块图3.2 系统性能指标为实现上述需求,本系统采

32、用JSP技术及web数据库技术构成基于web的BBS管理系统。(1)实用性 BBS管理系统的开发应将系统的实用性和实时性放在首要位置。系统的设计应最大限度发挥计算机的高速处理、海量存储能力。在软件设计中,以方便用户使用为标准,做到统一编码规则、统一界面风格。(2)可靠性 本系统的可靠性要求很高。系统在运行中要不发生或极少发生故障,在偶然事故及操作失误时,系统应具有较强的处理能力,而不应造成信息的丢失和破坏。(3)安全性 通过BBS管理系统可以修改及删除帖子和帖子回复。4 BBS管理系统分析设计与实现4.1 BBS管理系统设计总体要求系统设计是BBS管理系统开发过程的一个重要阶段,包括两个方面,

33、首先是总体结构的设计,其次是具体功能模块的设计。其主要目的是为系统实现(如编程、调试、试运行等)制定蓝图。在系统设计阶段,主要任务就是在各种技术和实施方法中权衡利弊,精心设计,合理地使用各种资源,最终勾画出新系统的详细设计方案。系统设计的原则为: 系统性。系统是作为统一整体而存在的,因此,在系统设计中,要从整个系统的角度进行考虑,系统的代码要统一,设计规范要标准,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享,使一次输入得到多次利用。 灵活性。为保持系统的长久生命力,要求系统具有很强的环境适应性。为此,系统应具有较好的开放性和结构的可变性。在系统设计中,应尽量采用模块化结构,提

34、高各模块的独立性,尽可能减少模块间的数据藕合,使各子系统间的数据依赖减至最低限度。这样,既便于模块的修改,又便于增加新的内容,提高系统适应环境变化的能力。 可靠性。可靠性是指系统抵御外界干扰时的恢复能力。一个成功的管理系统必须具有较高的可靠性,如安全保密性、检错及纠错能力、抗病毒能力等。 经济性。经济性是指在满足系统需求的前提下,尽可能减少系统的开销。一方面,在硬件投资上不能盲目追求技术上的先进,而应以满足应用需要为前提;另一方面,系统设计应尽量避免不必要的复杂化,各模块应尽量简洁,以便缩短处理流程。 美观性。简洁的界面设计,在设计过程中,以人为本,用易于理解的图标,用有意义的标题,简明、一致

35、、快捷并可靠的界面。4.2 数据库设计对应于数据模型,设计出的数据库一共分为4个表,即用户(User),论坛表(Forum),主题标(Topic),及回复表(Response)。数据库名为bbs,其建立的SQL语句如下。Create database if not exists bbs接下来创建数据表。1,用户信息表用户信息表(User) 拥有如下字段:用户ID(id),用户名(username),密码(password),性别(sex)电子邮箱(email),签名档(signature),用户级别(grade),其定义如表4.1所示。 表4.1 用户信息表 字段名字段类型字段长度是否允许为空

36、是否为主键描述idInt 8不允许是用户IDusername varchar20不允许否用户名passwordvarchar20不允许否密码sexvarchar2不允许否性别emailvarchar50不允许否电子邮箱signaturevarchar300允许否签名档gradevarchar20允许否级别下面是建立用户信息的SQL的语句。Create table user ( id int(8) not null, username varchar(20) not null , password varchar(20) not null, sex varchar(2) not null, em

37、ail varcahr(50), not null, signature varcahr(300) default null, grade varchar(20) defalut null, Primary key(id)2,论坛信息表论坛信息表(forum) 拥有如下字段:论坛ID(id),论坛名(forumname),及版主(manager)其定义如表4.2所示。 表 4.2 论坛信息表 字段名字段类型字段长度是否允许为空是否为主键描述idInt 4不允许是论坛IDforumname varchar20不允许否论坛名managervarchar20不允许否版主下面是建立用户信息的SQL的语

38、句。 Create table forum ( id int(4) not null, forumname varchar(20) not null , manager varchar(20) not null, Primary key(id)3,主题信息表主题信息表(Topic) 拥有如下字段:主题ID(id),标题(title),内容(content),作者(author)提交时间(submittime),及论坛ID(forumid)其定义如表5.3所示。 表 5.3 主题信息表 字段名字段类型字段长度是否允许为空是否为主键描述idInt 8不允许是主题IDtitlevarchar300不

39、允许否标题contenttext20允许否内容authorvarchar20不允许否作者submittimedate50不允许否提交时间forumidint4不允许否论坛 ID信息的SQL的语句。Create table user ( id int(8) not null, title varchar(20) not null , content text not null, author varchar(20) not null, submittime date, not null, forumid int(4) default null,Primary key(id)4,回复信息表回复信息

40、表(Response) 拥有如下字段:回复ID(id),标题(title),内容(content),作者(author)提交时间(submittime),及主题ID(forumid)其定义如表5.4所示。 表 5.4回复信息表 字段名字段类型字段长度是否允许为空是否为主键描述idInt 8不允许是主题IDtitlevarchar300不允许否标题contenttext20允许否内容authorvarchar20不允许否作者submittimedate50不允许否提交时间topicidint4不允许否论坛 ID下面是建立用户信息的SQL的语句。Create table user ( id int

41、(8) not null, title varchar(20) not null , content text not null, author varchar(20) not null, submittime date, not null, forumid int(4) default null, Primary key(id)4.3 系统下面是建立用户功能设计4.3.1 主要功能设计 BBS系统分为前台和后台两个模块。前台模块的使用对象包括了所用的用户(管理员,用户,游客),提供的空能包括注册账户,浏览文章,发表话题,回复主题,回复留言。后台模块的使用对象为管理人员(管理员,版主),提供的

42、功能包括管理用户,管理论坛,管理文章。 因此,整个BBS系统拥有两个入口。 前台入口 http:/localhost:8080/bbs/ 后台入口 http:/localhost:8080/bbs/admin_login.jsp4.3.2 用户功能设计用户在浏览器中输入http:/localhost:8080/bbs/,即进入用户登录界面,此页面提供用于填写用户名与密码的表单,如图4.1所示。页面有一个【登录】按钮,及“游客”,图4.1 用户登录模块图“注册” 两个连接,分别提供三种身份的用户使用。4.3.3 系统管理员功能设计管理员登录行BBS系统管理操作。以帖子模块为例,管理员登陆后,帖子

43、管理模块可以看到左边有一个管理的标签,进入后可以进行这个模块的管理。管理员可以在这里进行对已有的帖子修改和删除操作,也可以通过左边的增加按扭进行对帖子增加。其他模块的维护方式与票务交通模块类似。通过后台维护模块,管理员能更直观的进行操作,在对后台数据库进行任何操作后,都可以立即观察到效果,从而减少了错误发生的机率。管理员跟普通用户的区别就在于权限不同,即是基于该网站的身份验证和权限分配上。身份验证和权限分配实现的代码如下:public class AdminLoginHandle extends HttpServlet PublicvoiddoGet(HttpServletRequestreq

44、uest,HttpServletResponse response)throws ServletException, IOException / 设计字符集request.setCharacterEncoding(GB18030);Login login = new Login();String backNews = ; / 获得用户名String username = request.getParameter(username);HttpSession session = request.getSession();String show_info = 欢迎管理员 + username;session.setAttribute(username, username);session.setAttribute(info, show_info); / 获得用户密码String password = request.getParameter(password);String url = admin_login.jsp;UserDAO ud = new UserDAO(); / 判断用户是否存在,并验证用户的身份 管理员的级别是1, if (ud.findBy(username, password) if(ud.findGra

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号