《软件技术专业》毕业论文 BBS论坛系统.doc_第1页
《软件技术专业》毕业论文 BBS论坛系统.doc_第2页
《软件技术专业》毕业论文 BBS论坛系统.doc_第3页
《软件技术专业》毕业论文 BBS论坛系统.doc_第4页
《软件技术专业》毕业论文 BBS论坛系统.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

学生毕业设计(论文)系(分院):计算机应用技术系专 业:软件技术学 生:.指导教师:. 评 阅 人:. BBS论坛系统BBS Forum System总计 毕业设计(论文) 18页表格 8表插图 5幅 摘 要随着计算机的广泛应用,人们已经对网络不再感到陌生。在科技飞速发展的今天,电脑信息技术与各行各业进行了有效的结合。人们在网上可以进行网上购物,网上交友,电子商务,网络营效等等。面对强大的网络功能,必须在某方面要有一个健全的系统才能使网络发挥的淋漓尽致。在这个平台上,论坛提供了一个全新的人类沟通新方式。 互联网技术的不断发展和普及,使构造互联网站、开发网络应用程序已经成为当前的热门技术之一。开发网络应用程序必须了解两部分内容,即前台的开发工具和后台的数据库。本文以BBS的构建为例,介绍了利用JSP技术进行前台界面设计,利用SQL Server2000设计后台数据库以及利用DAO数据库访问技术实现对数据库的各种管理操作,实现BBS的各种基本功能。主要分析了论坛的主要组成情况,包括论坛的设计目标,框架结构,数据流程和论坛的主要特点等,重点介绍了论坛前台功能模块的详细思路和实现方法,以及对后台数据库关键技术和部分源代码的详细说明。关键词:JSP SQL Server2000 BBS TomcatAbstractWith the extensive application of computers, there has been no stranger to the network. Today, the rapid development in science and technology, computer information technology and all walks of life to an effective combination. It can be online shopping, online friends, e-commerce, network operators, efficiency and so on. The face of the powerful networking features, you must in some way to have a sound system to fully expresses the network. In this platform, the Forum provides a new way of human communication and new. The continuous development of Internet technology and the popularity of Internet sites to construct, develop web applications have become the most popular technologies. Development of Web applications must understand the two parts, namely, the future of development tools and back-office database. In this paper, BBS Construction, for example, describes the use of JSP technology, front-end interface design, using SQL Server2000 back-end database design and the use of DAO database access technology for a variety of database management operations to achieve a variety of basic functions of BBS. The main analysis of the main components of the Forum, including the Forums design goals, frame structure, data flow and the main characteristics of the Forum, focusing on the Forum front functional modules detailed ideas and implementations, as well as back-end database technology and some of the key source of A detailed description of the code. Key words:JSP SQLserver2000 BBS Tomcat目 录绪 论1第一章 系统技术简介21.1 JAVA语言简介21.2 JSP技术简介21.3 JDBC技术简介21.4 JavaScript概述31.5 运行环境3第二章系统需求分析42.1 应用需求分析42.1.1系统参与者42.1.2 用例分析图42.1.3 系统前台功能和后台功能42.1.4系统功能模块设计42.2系统用例5第三章 系统数据库设计103.1 数据库结构设计103.1.1用户表(user)103.1.2类别信息表(type)103.1.3版块信息表(board)103.1.4公告信息表(notice)103.1.5版块版主信息表(board_ user)113.1.6主题信息表(note)113.1.7回帖信息表(replynote)113.1.8非法关键字(illWord)113.2 连接数据库11第四章 系统详细设计134.1前台部分134.1.1前台总体框架134.1.2部分模块代码实现134.2 后台部分144.2.1 后台总体框架144.2.2部分模块代码实现14第五章 总 结16致 谢17参考文献18BBS论坛系统绪 论电子公告牌系统(英文:Bulletin Board System,缩写BBS)是一种软件,允许用户使用终端程序通过电话调制解调器拨号或者因特网来进行连接,拥有下载数据或程序、上传数据、阅读新闻、与其它用户交换消息等功能。许多BBS由站长(通常被称为SYSOP(SYStem OPerator)业余维护,而另一些则提供收费服务。早期BBS的型态大多为在黑色终端机画面上以单色或彩色的纯文字呈现,并使用telnet协议连接,但随着HTTP网络协议及HTML等网页技术的发展,BBS的型态也转变为网络论坛或网络社群等多元样貌,早期telnet式的BBS系统则快速式微,然而在香港、台湾以及中国大陆等地的学校中,telnet式的BBS系统仍然非常盛行,以致于对BBS一词涵义的认知与世界其他地方有所差异。在香港、台湾以及中国大陆等地的“BBS”一词通常是专指telnet式的BBS系统。随着互联网日益深入社会生活,BBS开发技术发展至今,从CGI,ASP,到PHP已经日趋成熟,功能也更加丰富,但携着Sun公司的Java技术所实现的“一次编写,到处运行”的优势,继承这一衣钵的JSP技术越来越受到人们的注视。BBS作为一种对外的展示窗口,进行内外信息交流,已成为大众的广泛需要。为了进行更好的交流,用户想就自己的专业和爱好能和其他的用户进行及时专业的交流,这就有了论坛,这样以来我们就可以在网络这个虚拟的空间中方便地实现交流。Internet上发布信息主要是通过网站来实现的,获取信息是要在网站论坛中和Internet“海洋”中按照一定的检索方式将所需要的信息的。因此论坛建设在Internet应用上的地位显而易见,它已成为现代人勾通和获取信息的重要组成部分,从而倍受人们的重视。现在各个大学网站都有BBS论坛,在BBS上,同学与同学之间,老师之间可以非常轻松的进行交流,有网络的地方,不同的地区和国家的各种不同的人都可加入到BBS上进行交流。这也节省了大量的教育资源,和充分的利用教育资源。Java是未来的主流开发技术,具有很多优势。JSP则是Java在InternetIntranet Web上的重要应用技术,得到了广泛的支持和承认,它可以和各种Java技术完好地结合在一起,从而实现非常复杂的应用。本网站使用JSP + JavaBeans和后台数据库MYSQL在WEB系统开发的,从而创建一个更为稳定,高效,安全的运行环境。本文主要讨论了基于B/S模式的一种JSP论坛的设计与实现,主要功能是实现客户端和服务器端的动态交互。其中有六个模块:论坛用户登陆注册模块,论坛帐户信息模块,论坛文章发布模块,公告/制度模块,版块管理模块,信息管理模块。实现论坛的基本功能,具体功能的实现利用JavaBeans组件技术。第一章 系统技术简介1.1 JAVA语言简介Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。2009年04月20日,oracle(甲骨文)宣布收购sun。1991年,Sun公司的James Gosling。Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个Oak(一种橡树的名字)软件,他是Java的前身。当时,Oak并没有引起人们的注意,直到1994年,随着互联网和3W的飞速发展,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官Scott McNealy的支持,得以研发和发展。为了促销和法律的原因,1995年Oak更名为Java。Java的得名还有段小插曲呢,一天,Java小组成员正在喝咖啡时,议论给新语言起个什么名字的问题,有人提议用Java(Java是印度尼西亚盛产咖啡的一个岛屿),这个提议得到了其他成员的赞同,于是就采用Java来命名此新语言。很快Java被工业界认可,许多大公司如IBM Microsoft.DEC等购买了Java的使用权,并被美国杂志PC Magazine评为1995年十大优秀科技产品。从此,开始了Java应用的新篇章。1.2 JSP技术简介JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。1.3 JDBC技术简介JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。 有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。JAVA数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。 Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。 MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的更好方法。1.4 JavaScript概述Javascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。1.5 运行环境设备环境服务器端:P4或以上CPU, 1G或以上内存客户端:P3或以上CPU, 256M或以上内存支持软件环境服务端:操作系统:Windows 2000 ServerWeb容器:JDK6.0、Tomcat6数据库:SQL Server 2000客户端:操作系统:Microsoft Windows 98 简体中文版 或 以上浏览器:Microsoft Internet Explorer 6.0第二章系统需求分析2.1 应用需求分析2.1.1系统参与者游客:所有访问论坛,尚未登录的人。会员:申请注册并提交成功的人。版主:管理版块内主题的会员,如删除主题,置顶主题,加精主题,取消置顶,取消加精。管理员:具有会员管理,版块管理,类别管理,公告管理等功能。用户:用户泛指所有的会员和游客。2.1.2 用例分析图图1 管理员用例图图2 用户用例图2.1.3 系统前台功能和后台功能(1)前台部分由用户使用,主要包括会员注册,会员管理,主题浏览,主题发表,主题回复,信息检索,主题管理,信息修改等功能。(2)后台部分由管理员使用,主要包括类别管理,版块管理,用户管理,公告管理,关键字过滤等功能。2.1.4系统功能模块设计功能结构图如下:图3 系统功能结构图2.2系统用例2.2.1 用户注册用例用例名称:用户注册描述:游客通过此操作可以成为会员。前置条件:游客通过浏览器访问论坛首页。正常事件流:游客通过浏览器访问论坛首页,在首页点击“注册”按钮,系统跳转至注册页面,游客输入注册信息。必填项:用户名(String),年龄(Int),性别(Int),电子邮件(String),密码(String),确认密码(String),验证码,验证问题答案(String),出生日期(Date)。非必填项:所在地(String),爱好(String),并点击“提交“按钮,系统将提示注册成功。备选事件流:如果注册信息必填项没填完整或没填点击“提交”按钮,系统会提示“信息没填写完整,请填写完整”,如果密码长度超过或小于规定范围,系统将提示“密码长度应该在1016个字符之间,请重新输入!”。如果两次密码输入不一致,系统将提示“两次密码输入不一致,请重新输入!”,如果验证码看不清楚,请点击“刷新”按钮,系统将重新显示验证码。如果验证码输入不正确,系统将提示“验证码输入不正确,请重新输入!”并显示一个新的验证码,如果出生日期格式填写不正确,系统将提示“出生日期格式输入不正确,请重新输入!”,如果用户名超过、少于或不在规定范围内,系统将提示“用户名字符应该是616个字母或数字之间,请重新输入!”,如果系统检测有同名的用户,系统将会提示“对不起!用户名已存在,请重新输入用户名”。2.2.2 登录用例用例名称:会员登录描述:会员通过此操作可以登录论坛首页,可以进行主题的浏览、发布、回复等操作。前置条件:会员通过浏览器访问论坛首页。正常事件流:会员通过浏览器访问论坛首页,会员正确的输入自己的用户名和密码并点击“登录”按钮,系统以此用户名登录论坛首页并可以进行符合论坛规则的相应操作。备选事件流:如果用户忘记密码,请点击“忘记密码”按钮,系统跳转至取回密码页面。用户正确填写用户名、密码、Email、验证码,验证问题后点击“完成”按钮。如果系统检测成功,系统将提示“密码已找回,请您重新登录!”。如果系统检测未成功,系统将提示用户“对不起!请您重新注册!”。用户要重新注册成功才可以登录论坛,如果系统未能检测到该用户,系统将提示“该用户不存在,请您注册!”,如果用户的密码输入不正确,系统将提示“密码输入不正确,请重新输入!”,如果用户连续三次未能登录成功,系统提示“该用户今天不能再登录!”。2.2.3浏览主题用例用例名称:浏览主题描述:用户(包括所有注册会员或游客)通过此操作可以浏览论坛的板块列表,主题列表,以及每一个主题。前置条件:用户通过浏览器访问论坛首页。正常事件流:用户通过浏览器访问论坛首页,用户从板块列表中选择自己想要浏览的论坛板块,系统页面分页显示此板块的主题列表,用户从主题列表中选择自己想要浏览的主题点击,系统分页显示用户指定的主题内容及该主题所有回复。2.2.4发布主题用例用例名称:发布主题描述:会员通过此操作可以进行主题的发布。前置条件:会员通过浏览器访问论坛首页,并正确登录。正常事件流:会员通过浏览器访问论坛首页,会员正确输入自己的用户名和密码,并成功登录,系统通过类别分类显示板块列表,会员从板块列表中选择自己想要发布主题的论坛板块,系统页面分页显示此板块内的主题列表,会员点击 “发帖”按钮,系统转至发表主题页面,会员输入想要发布的主题的标题、关键字、内容(含表情符号),会员书写完毕后,点击“提交”按钮,主题成功提交;会员也可点击“重写”按钮进行主题重写;或点击“返回”按钮,系统返回至主题列表页面,若会员成功提交主题,系统在主题列表中显示注册用户提交的主题的标题、作者、回帖人数、发表时间等信息。备选事件流: 系统判断会员输入主题标题的字符数,若为空,返回错误信息,系统不予提交该主题;若超过50个字符,系统也返回错误信息,并不予提交该主题,系统判断会员输入主题内容的字符数,若为空,返回错误信息,系统不予提交该主题。2.2.5 回复主题用例用例名称:回复主题描述:会员通过此操作可以进行主题的回复。前置条件:会员通过浏览器访问论坛首页,并正确登录。正常事件流:会员通过浏览器访问论坛首页,会员正确输入自己的用户名和密码,并成功登录,系统通过类别分类显示板块列表,会员从板块列表中选择自己想要回复的主题的论坛板块,系统分页显示此板块内的主题列表,会员在主题列表中选择要回复的主题点击,系统跳至该主题内容及其所有回帖信息页面,会员在该页面最下方的回复域中输入回复的内容(含表情符号),并输入验证码,点击“回复”按钮,回复主题成功;会员也可点击“重写”按钮,重写当前回帖内容;或点击“返回”按钮,系统返回至主题列表页面,若会员成功恢复主题,此会员提交的回复内容在该主题信息页面显示。备选事件流:系统判断会员的回帖字符数,若为空,返回错误信息,系统不予提交该回帖。2.2.6会员管理用例用例名称:会员管理描述:管理员通过此操作可以对会员进行启用和禁用,禁用后该会员将不能登录系统。前置条件:管理员登录登录到管理界面。正常事件流:管理员登录到管理界面,管理员从管理平台上选择会员管理,系统通过分页的形式显示会员列表,或者在搜索框中输入用户名,并点击搜索,管理员从列表中选择要启用或禁用的会员,并点击启用或禁用,系统给出确认信息并显示修改后的会员列表信息。备选事件流:管理员输入用户名点击搜索后,若没有找到该注册用户,则显示该用户不存在。2.2.7类别添加用例用例名称:类别添加描述:管理员通过此操作可以进行类别的添加。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从管理平台上选择类别维护,系统按类别编号升序分页显示所有的类别列表,管理员在添加类别标签后面输入想要添加类别名,并点击增加,系统显示增加后的类别信息。备选事件流:在添加类别时,若数据库中没有此种类别,则添加成功。若数据库中已有此种类别,则系统提示“已经存在,请重新输入新的类别!”,若输入的类别名不在810个字符之间时,系统提示“类别名只能在810个字符之间,请重新输入合法的类别名”。2.2.8 类别修改用例用例名称:类别修改描述:管理员通过此操作可以对已经存在的类别进行修改。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从管理平台上选择类别维护,系统按类别编号升序分页显示所有的类别列表,选择想要修改的类别,用新类别名覆盖旧类别名,并点击保存,系统显示修改后的所有类别信息。备用事件流:在修改类别时,系统先判断修改的类别名是否已在数据库中,若数据库中没有此种类别,则修改成功。若数据库中已有此种类别,则系统提示“已经存在,请重新输入新的类别!”,若输入的类别名不在810个字符之间时,系统提示“类别名只能在810个字符之间,请重新输入合法的类别名”。2.2.9 类别删除用例用例名称:类别删除描述:管理员通过此操作可以进行对已经存在的类别进行删除。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从管理平台上选择类别维护,系统按类别编号升序分页显示所有的类别列表,管理员选择想要删除的类别,并点击删除,系统弹出对话框提示管理员是否确认要删除此类别,选择“是”,系统将删除类别信息。备用事件流:在删除类别时,若该类别下还有版块,则系统以弹出框提示管理员该类别下还有版块,是否要批量删除,请慎重!2.2.10 版块添加用例用例名称:版块添加描述:管理员通过此操作可以进行版块的添加。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从类别列表中选择自己想要添加版块的类别,系统显示新增版块信息填写表单,管理员输入想要添加版块名称,版块说明和选择版主(名称和说明为必填信息),并点击确定,系统弹出对话框,提示添加成功。备用事件流:在添加板块时,管理员要选择版主,则点击版主输入框后面的小人头图标,系统将弹出新窗口,以分页显示所有会员信息列表,管理员从列表中选择一个会员,并点击确定,则系统将关闭此会员列表窗口,并把选定的会员昵称显示在版主输入框中。2.2.11版块修改用例用例名称:版块修改描述:管理员通过此操作可以进行对已经存在的版块进行修改。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从类别列表中选择自己想要修改版块的类别,系统显示此类别下的所有版块,管理员选择想要修改的版块,系统显示此版块的信息,管理员在维护版块信息表单中进行修改,并点击确定。2.2.12 版块关闭用例用例名称:版块关闭描述:管理员通过此操作可以进行对已经存在的版块进行关闭。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从类别列表中选择自己想要关闭版块的类别,系统显示此类别下的所有版块,管理员选择想要关闭的版块,在维护版块信息表单中有个关闭选择框,勾上关闭,并点击确定。2.2.13 版块删除用例用例名称:版块删除描述:管理员通过此操作可以对已经存在的版块进行删除。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从类别列表中选择自己想要删除版块的类别,系统显示此类别下的所有版块,管理员选择想要删除的版块,系统显示此版块的信息,管理员在维护版块信息表单中点击删除,系统弹出对话框,提示是否要删除此版块,请慎重!2.2.14版块转移用例用例名称:版块转移描述:管理员通过此操作可以把一个类别里的版块批量转移到另一类别中。前置条件:管理员登录后台管理界面。正常事件流:管理员登录后台管理界面,从类别列表中选择自己想要转移版块所在类别,点击转移按钮,系统则分页显示此类别的所有版块信息,在转移到标签后面选择转移目标类别,选择要转移的版块,也可以翻页选择,并点击确认转移按钮,系统在页面上方红字显示转移成功。备选事件流:若现有类别只有一个,则提示没有可用目标类别,若没有选择目标类别,但又点击了确认转移按钮,则系统在目标类别选择框后面红字显示“请选择目标类别”,若没有选择版块,但又点击了确认转移按钮,则系统在页面上方红字显示“没有选择版块,请选择要转移的版块”。2.2.15主题转移用例用例名称:主题转移描述:管理员通过此操作可以把一个版块下的主题转移到目标版块(可跨类别)中。前置条件:管理员登录到管理界面,并选定了一个类别下的一个版块。正常事件流:管理员登录到管理界面,并选定了一个类别下的一个版块, 系统将分页按主题编号升序显示该版块下所有的主题信息,在转移目标类别标签下选择一个目标类别,接着在转移目标版块标签下选择一个目标版块,在主题列表中选择要转移的版块,并点击转移按钮,系统就将转移后的主题列表重新刷新。备选事件流:若没有选目标类别,先去选目标版块将只选择本类别下的版块(因为目标类别中默认选择本类别),若没有选择目标版块,在目标类别下面以红字显示“还没有选择目标版块,请选择目标版块!”,若没有选择主题,系统将不做任何反应,若要全部转移,勾上全选,系统将帮你选择上所有的主题。2.2.16主题删除用例用例名称:主题删除描述:版主通过此操作可以把自己所管理版块下的主题删除。前置条件:版主登录到自己管辖下的版块。正常事件流:版主登录到自己管辖下的版块,系统也将把所有的主题以主题编号升序分页显示,版主选择所有需要删除的主题(任何主题),并点击删除,系统弹出“删除主题将同时删除该主题的所有回复记录,确实要删除所选的主题吗?”,选择确定,系统将刷新删除后的主题列表。备选事件流:若选择取消,系统将不做任何动作。2.2.17主题置顶用例用例名称:主题置顶描述:版主通过此操作可以把自己管辖下的优秀主题放到主题列表的顶部,以便用户第一时间看到。前置条件:版主登录到自己管辖下的版块。正常事件流:版主登录到自己管辖下的版块,系统也将把所有的主题以主题编号升序分页显示,版主选择所有需要置顶的主题(可以是已经是置顶主题),并点击置顶,系统把这些主题放到主题列表的最前端,置顶主题也按主题编号升序显示,并以蓝色显示,和标有置顶标识。接下去就是普通主题按主题编号升序显示,显示时分页。备选事件流:若没有选择时,系统不做任何提示,并不做任何动作。2.2.18主题取消置顶用例用例名称:主题取消置顶描述:版主通过此操作可以把自己管辖下的已经置顶的主题取消置顶,以使置顶主题不要过多。前置条件:版主登录到自己管辖下的版块。正常事件流:版主登录到自己管辖下的版块,系统也将把所有的主题以主题编号升序分页显示,版主选择所有需要取消置顶的主题(可以是普通主题),并点击取消置顶,系统将取消已经置顶的主题的置顶状态(显示在普通主题中,并颜色恢复正常,置顶标识取消)。备选事件流:若没有选择时,系统不做任何提示,并不做任何动作。2.2.19主题加精用例用例名称:主题加精描述:版主通过此操作可以把自己管辖下主题给增加到精品区去。前置条件:版主登录到自己管辖下的版块。正常事件流:版主登录到自己管辖下的版块,系统也将把所有的主题以主题编号升序分页显示,版主选择所有需要加精的主题(任何主题),并点击加精,系统在主题列表中以红色显示加有精品标识,位置不变。同时把此主题加到精品区中。2.2.20主题取消加精用例用例名称:主题取消加精描述:版主通过此操作可以把自己管辖下精品主题给取消加精。前置条件:版主登录到自己管辖下的版块。正常事件流:版主登录到自己管辖下的版块,系统也将把所有的主题以主题编号升序分页显示,版主选择所有需要取消加精的精品主题(也可以是任何主题),并点击取消加精,系统在主题列表中取消以红色显示和精品标识,位置不变。第三章 系统数据库设计3.1 数据库结构设计3.1.1用户表(user)主要用于保存注册用户的基本信息,该表的结构如表1所示。属性名称类型长度备注user_idint4会员ID(主键)usernamevarchar20会员名nicknamevarchar20会员昵称passwordvarchar20密码sexbit1性别:0-男,1-女birthdaydatetime8出生日期emailvarchar64电子邮件hobbyvarchar30爱好addressvarchar40所在地head_indexvarchar64会员头像图片索引user_typesmallint2会员类型:0-普通会员,1-版主,2-管理员pointsint4会员积分questionvarchar50验证问题answervarchar50验证问题答案login_datedatetime8注册日期forbidbit1会员是否被禁用:0-禁用,1-正常表1 用户表(user)3.1.2类别信息表(type)主要用于保存管理员所添加的类别,该表的结构如表2所示。属性名称类型长度备注type_idint4主键,类型ID,自增长 namevarchar32类型名称build_dateDatetime8新类型创建时间modify_dateDatetime8类型修改时间表2 类别信息表(type)3.1.3版块信息表(board)主要用于保存管理员在类别下所添加的版块,该表的结构如表3所示。属性名称类型长度备注board _idint4主键, 版块ID,自增长type_idint4外键, 类别IDnamevarchar32版块名称 describevarchar128版块描述build_dateDatetime8新版面创建时间modify_dateDatetime8类型修改时间openbit11-开启,0-关闭,默认1表3 版块信息表(board)3.1.4公告信息表(notice)主要用于保存管理员所添加的公告,该表的结构如表4所示。属性名称类型长度备注notice_idint4公告ID,自增长titlevarchar64公告标题contenttext1024公告内容effect_timeDate8有效期built_timeDate8创建时间表4 公告信息表(notice)3.1.5版块版主信息表(board_ user) 主要用于保存某一板块对应某个版主,该表的结构如表5所示。属性名称类型长度备注board _idint8外键user_idint8外键表5版块版主信息表(board_ user)3.1.6主题信息表(note)主要用于保存注册用户所发表的帖子,该表的结构如表6所示。属性名称类型长度备注note_idint4帖子ID,主键,自动增长,user_idint4用户ID,即发贴人note_titlevarchar255帖子标题key_wordchar10关键字note_contenttext帖子内容browse_countint4帖子浏览次数block_idint4所属版块(版块ID)is_essencechar1是否设为精华帖0-普通;1-精华默认为0is_topchar1是否置顶0-任意;1-置顶默认为0publish_dateDatetime8帖子发表时间表6 主题信息表3.1.7回帖信息表(replynote)主要用于保存用户所回复的帖子,该表的结构如表7所示。属性名称类型长度描述reply_idint 4回帖的IDuser_idint4用户IDreply_contentText回帖的内容board_idint4帖子所属版块IDreply_dateDatetime8帖子回复时间表7 回帖信息表(replynote)3.1.8非法关键字(illWord)主要用于保存用户所输入的非法关键字,该表的结构如表8所示。属性名称类型长度描述word_idint4关键字IDkeyWordVarchar64非法关键字表8非法关键字(illWord)3.2 连接数据库由于系统要多次进行数据库的连接,所以将连接数据库的部分封装在一个javaBean里,方便在DAO中多次调用,关键代码如下:/连接数据库所需的参数放在资源属性文件DBCperties中public class DBConnection / 配置DBCperties文件,应置于classes目录下private static String CONFIG_FILENAME = DBCperties;/ 连接数据库的驱动程序private String driverName;/ 连接数据库的URLprivate String url;/ 连接数据库的用户与口令private String user;private String password;/构造函数:从属性文件中获取连接数据库信息public DBConnection() throws DBConnectionException Properties prop = new Properties();/ 读取配置文件信息InputStream in = DBConn

温馨提示

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

评论

0/150

提交评论