BBS论坛系统毕业设计论文.pdf

上传人:索**** 文档编号:74982520 上传时间:2023-03-01 格式:PDF 页数:46 大小:2.06MB
返回 下载 相关 举报
BBS论坛系统毕业设计论文.pdf_第1页
第1页 / 共46页
BBS论坛系统毕业设计论文.pdf_第2页
第2页 / 共46页
点击查看更多>>
资源描述

《BBS论坛系统毕业设计论文.pdf》由会员分享,可在线阅读,更多相关《BBS论坛系统毕业设计论文.pdf(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、毕 业 设 计 论 文专业班级:软件技术软件072学生姓名:吴家文指导教师:朱克敌密级:内部BBS论坛系统BBS Forum System系别名称:信息工程系专业班级:软件技术软件072 学生姓名:吴家文学号:2007433211 指导教师:朱克敌沈阳工程学院毕业论文摘要-I-摘要随着 Internet技术的快速发展,人与人之间交流方式逐渐增多。网络视频、网络聊天、博客已成为人们彼此沟通、交流信息的主要方式。此外,为了方便人们在某一专业领域探讨问题和发表意见,Internet上还出现了在线论坛。在论坛上,人们可以对某一领域提出自己遇到的问题,即发表某一主题,随后,论坛上的其他人会根据自己的学识

2、、经验发表意见或提出问题的方法。开发 BBS 论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的网上社区。因此,BBS 论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的回复者信息,系统还需要提供用户注册和登录的功能。只有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题信息。本论坛系统是基于是Struts1.2+SQL Server 2000实现的,它具有使用方便、操作灵活、运行稳定、安全可靠等特点。关键词在线论坛,BBS,网上社区,Struts 沈阳工程学院毕业论文Abstract-II-Ab

3、stract With the rapid development of Internet technology,means of communication between people is gradually increasing.Video,web chat,blog have become the main forms of exchanging information with each other.In addition,in order to allow people in a professional field to probe into questions and mak

4、e comments,Internet on-line forums have emerged.At the forum,people can put forward their own particular problems encountered in the field,a subject that is issued,then the rest of the forum,making comments or raise problems based on their knowledge and experience.BBS forum system aims to provide a

5、communication platform for the user,for the majority of users to exchange experiences and explore issues of community.Therefore,BBS forum system is the most basic function of the first keynote,followed by other officers to express their views on the theme.In addition,in order to record the release o

6、f the theme and the theme of the respondents information systems also need to provide users registration and login function.Only registered users can log on and release publications and reply to topics,visitors(tourists)can only view topic information.This forum system is based on a Struts1.2+SQL Se

7、rver 2000 implementation,it is convenient,flexible operation,stable,safe and reliable.Key WordsOnline Forum,BBS,Online Community,Struts 沈阳工程学院毕业论文目录-III-目录摘要.IAbstract.II 第 1 章 绪论.1第 2 章 系统分析.22.1 需求分析.22.2 可行性分析.2第 3 章 系统总体设计.43.1 系统目标.43.2 系统功能结构.43.2.1 前台功能结构.43.2.2 后台功能结构.53.3 系统流程图.53.4 系统开发环境.

8、63.4.1 开发环境.63.4.2 系统平台体系结构的选择.73.4.3 JSP语言.73.4.4 SQL Server 2000数据库.83.4.5 JDBC技术.8第 4 章 数据库设计.10 4.1 数据库分析.10 4.2 数据库概念设计.10 4.3 数据库逻辑设计.13 第 5 章 系统详细设计与实现.17 5.1 前台设计.17 5.1.1 前台页面设计与实现.17 5.1.2 前台显示概述.18 5.1.3 查看首页面的论坛类别.18 5.1.4 查看某版面中根贴列表.20 5.1.5 查看根贴和回复贴内容.21 5.1.6 发表帖子模块设计.23 5.1.7 根贴操作的设计

9、与实现.27 5.2 后台设计.32 5.2.1 后台页面设计与实现.32 5.2.2 版面管理模块设计与实现.33 结论.39 致谢.40 参考文献.41 沈阳工程学院毕业论文第 1 章 绪论-1-第 1 章 绪论随着互联网日益深入社会生活,BBS 开发技术发展至今,从CGI,ASP,到 PHP 已经日趋成熟,功能也更加丰富,但携着Sun公司的 Java技术所实现的“一次编写,到处运行”的优势,继承这一衣钵的JSP技术越来越受到人们的注视。BBS 作为一种对外的展示窗口,进行内外信息交流,已成为大众的广泛需要。为了进行更好的交流,用户想就自己的专业和爱好能和其他的用户进行及时专业的交流,这就

10、有了论坛,这样以来我们就可以在网络这个虚拟的空间中方便地实现交流,BBS 论坛是我们在这个地球村中生活的重要交流工具。所以我选择使用JSP开发 BBS 论坛这一课题作为毕业设计。Java是未来的主流开发技术,具有很多优势。JSP则是 Java在 InternetIntranet Web上的重要应用技术,得到了广泛的支持和承认,它可以和各种 Java技术完好地结合在一起,从而实现非常复杂的应用。本网站使用JSP+SQL Server 2000 在 MyEclipse 系统开发的,从而创建一个更为稳定,高效,安全的运行环境。本文主要实现了基于B/S 模式的一种 JSP论坛的设计与实现,主要功能是实

11、现客户端和服务器端的动态交互。BBS 论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的加复者信息民,系统还需要提供用户注册和登录的功能。只有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题信息。根据用户的需求及以上的分析,BBS 论坛需要具备以下功能:显示各论坛类别及版面、查看版面下所有根帖、查看精华帖子、查看自己发表的帖子、搜索帖子、查看根帖内容、用户注册、用户登录、发表帖子、回复帖子、进入后台、论坛类别管理、版面管理、用户管理和用户注册。设计 BBS 论坛系统所要考虑的问题主要有如何通过资源文件显示文字和使用静态代

12、码块。设计中力求界面友好、简洁,易于操作。代码部分尽量避免逻辑错误,算法设计简单合理,尽量使程序具有较好的可读性,有利于其他的设计者对程序的阅读;力求对数据库操作的安全与稳定,尽量避免数据库操作异常,并要保证查询的快速无误。保证程序的逻辑结构,编程时注意多使用通用方法(函数和过程)。沈阳工程学院毕业论文第 2 章 系统分析-2-第 2 章 系统分析2.1 需求分析1功能性需求开发 BBS 论坛系统的目的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。因此,BBS 论坛系统最基本的功能首先是发表主题,其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的加复

13、者信息民,系统还需要提供用户注册和登录的功能。只有注册的用户登录后才能够发表和回复主题,浏览者(游客)只能浏览主题信息。根据用户的需求及以上的分析,BBS 论坛需要具备前台功能和后台功能。(1)系统前台功能:显示各论坛类别及版面、查看版面下所有根帖、查看精华帖子、查看自己发表的帖子、搜索帖子、查看根帖内容、用户注册、用户登录、发表帖子、回复帖子(2)系统后台功能:进入后台、论坛类别管理、版面管理、用户管理、用户注册。2非功能性需求(1)平台限制:基于Windows XP,不需要安装其他软件。(2)操作方式:全部操作都可以基于浏览器进行。2.2 可行性分析可行性分析是在系统调查的基础上,针对新系

14、统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。1技术可行性技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该BBS 论坛管理系统采用了流行的JSP语言和当前新兴的Browser/Server(浏览器/服务器)模式进行开发。三层的B/S 体系结构具有许多传统Client/Server(客户机/服务器)体系结构不具备的优点,而且又紧密的结合了Internet/Intranet(国际互联网/企业内部互联网)技术,

15、是技术发展的大势所趋,它把应用系统带入了一个崭新的发展时代。数据库服务器选用SQL Server 2000数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台能满足沈阳工程学院毕业论文第 2 章 系统分析-3-此系统的需要。2经济可行性主要是对项目的经济效益进行评估,本系统模拟的是提供一个供用户交流的平台,为广大用户提供交流经验、探讨问题的社区。但实际只是用于个人的毕业设计,只

16、是模拟,也不存在资金的流动,故在经济上是可行的。3社会可行性随着 Internet技术的快速发展,BBS 论坛已成为人们彼此沟通、交流信息的主要方式。在论坛上,人们可以对某一领域提出自己遇到的问题,随后,论坛上的其他人会根据自己的学识、经验发表意见或提出问题的方法。BBS 论坛接近了人们之间的距离,它早已成为人们网上生活的必备工具。所以说BBS 论坛对当今社会是相当重要的。沈阳工程学院毕业论文第 3 章 系统总体设计-4-查看版面下根贴查看精华帖子搜索根贴查看根贴内容用户登录用户注册用户注销发表帖子回复帖子查看自己发表的帖子BBS 论坛前台第 3 章 系统总体设计3.1 系统目标对于典型的数据

17、库管理系统,尤其是对像论坛这样的数据流量特别大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。本系统在设计时应满足以下几个目标:1采用人机对话的操作方式,界面设计美观友好,信息查看灵活、方便、快捷、准确,数据存储安全可靠。2全面展示系统内所有分类的帖子,并进行分页显示。3为用户提供一个方便、快捷的主题信息查看功能。4实现在线发表帖子。5提供登录模块,主要用开管理员登录系统和发表帖子时留下发表者的信息。6用户随时都可以查看自己发表的帖子。7对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。8系统最大限度地实现了易维护性和易操作性。9系统运行稳定安全可靠。3.2 系统功能结构

18、3.2.1 前台功能结构用户访问论坛首页面后,可进行查看版面下根贴信息、查看自己发表的帖子、查看精华帖子、搜索帖子、查看根贴信息、用户注册等功能。用户在此BBS 论坛中通过注册成为该网站的真正用户并成功登录系统后,可进行发表帖子、回复帖子、查看自己发表的帖子等操作。前台功能结构图如图3.1 所示。图 3.1 BBS 前台功能结构图沈阳工程学院毕业论文第 3 章 系统总体设计-5-类别管理版面管理用户管理退出管理BBS 论坛后台类别管理版面管理用户管理是否登录是否成功进入后台后台首页用户登录管理员3.2.2 后台功能结构若用户的权限为管理员,则可进入后台,可进行论坛类别的管理、版面管理和用户管理

19、的操作。后台功能结构图如图3.2 所示。图 3.2 BBS 后台功能结构图3.3 系统流程图1BBS 论坛的系统后台流程图如图3.3 所示。图 3.3 BBS 论坛系统后台流程图2BBS 论坛的系统前台流程图如图3.4 所示。沈阳工程学院毕业论文第 3 章 系统总体设计-6-图 3.4 BBS 论坛的系统前台流程图3.4 系统开发环境3.4.1 开发环境在开发此论坛的时候,需要具备下面的软件环境服务器端:操作系统:Windows XP。Web服务器:Tomcat 6.0。Java开发包:JDK 1.6。数据库:SQL Server 2000。浏览器:IE6.0。分辨率:最佳效果为1024 76

20、8 像素。客户端:浏览器:IE6.0。分辨率:最佳效果为1024 768 像素。查看精华帖子搜索根贴查看版面下根贴查看根贴内容发表帖子回复帖子提前帖子删除帖子置顶帖子置为精华贴删除回复帖查看自己发表的根贴用户注册是否管理员、版主、帖子发表者是否登录是否登录提示无权操作游客访问是是否是否否前台首页用户登录成功是沈阳工程学院毕业论文第 3 章 系统总体设计-7-3.4.2 系统平台体系结构的选择在应用开发领域中,目前系统平台的体系结构主要有两种,即C/S(Client/Server)结构和 B/S(Brower/Server)结构。C/S 结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构

21、,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client 端和 Server端来实现,降低了系统的通讯开销。B/S 结构,即浏览器和服务器结构。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN 等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA 这样的跨平台语言出现之后,B/S 架构管理软件更是方便、快捷、高效。传统的 C/S 体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client 端还是 Server端都还需要特定的软件支持。由于没能提供用户真正期

22、望的开放环境,C/S 结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用,而且代价高,效率低。B/S 结构,是随着 Internet 技术的兴起,对 C/S 结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW 浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。因此本系统采用了B/S 结构。3.4.3 JSP 语言JSP(JavaServer Pages)是由 Sun 公司倡导,许

23、多别的公司参与一起创建的一种新动态网页技术标准,类似其他技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片断(Scriptlet)和 JSP标签,构成了 JSP网页(*.jsp)Servlet/JSP Container收到客户端发出的请求时,首先执行其中的程序片断,软后将执行结果以HTML 格式响应给客户端,其中程序片断可以是:操作数据库,重新定向网页以及发送E-Mail 等等,这些都是建立动态网站所需要的功能。所有程序操作都在服务器端运行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP称为 Server-side Language。所

24、以被许多人认为是未来最有发展前途的动态网站技术之一。语言优势如下:1将内容的生成和显示进行分离使用 JSP技术,Web页面开发人员可以使用HTML 或者 XML 标识来设计和格式化最终页面。使用 JSP标识或者小脚本来生成页面上的动态内容。生成的内容的逻辑被封装在标识和 JavaBeans组件中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面而不影响内容的生成。2一次编写,到处运行沈阳工程学院毕业论文第 3 章 系统总体设计-8-作为 Java平台的一部分,JSP拥有 Java编程语言“一次编写,到处运行”的特点,随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使

25、用自己所选择的服务器和工具,但并不影响当前的应用。3JSP的平台适应性更广这是 JSP比 ASP的优越之处,几乎所有的平台都支持Java,它们可以在任何平台下通行无阻。虽然 NT 的 OS 占据了很大的市场的份额,但在服务器方面UNIX 的优势仍然很大.从一个平台移植到另一个平台,JSP和 JavaBeans甚至不用重新编译,因为Java字节码都是标注的字节码与平台无关。4健壮的存储管理和安全性由于 JSP页面的内置脚本语言是基于Java编程语言的,而且所有的 JSP页面都被编译为 Java Servlet,JSP页面就具有 Java技术的所有优点,包括健壮的存储管理和安全性。3.4.4 SQ

26、L Server 2000 数据库SQL Server 2000是 Microsoft 公司推出的基于Client/Server 模式的新一代大型关系数据库管理系统。它功能强大、操作简便,广泛应用于数据库后台系统。SQL Server 2000代表着下一代 Microsoft.NET Enterprise Servers(企业分布式服务器)数据库的发展趋势。它在电子商务、数据仓库和数据库解决方案等应用中起着重要的核心作用。后台使用 DBMS 为 Microsoft SQL Server 2000。Microsoft SQL Server 2000 能提供超大型系统所需的数据库服务。大型服务器可

27、能有成千上万的用户同时连接到SQL Server 2000 实例。SQL Server 2000 为这些环境提供了全面的保护,具有防止问题发生的安全措施,例如,可以防止多个用户试图同时更新相同的数据。SQL Server 2000 还在多个用户之间有效地分配可用资源,比如内存、网络带宽和磁盘I/O。超大型 Internet 站点可将其数据分开存放在多台服务器上,从而使处理负荷分散到多台计算机上,使站点能为成千上万的并发用户提供服务。可以在一台计算机上运行多个SQL Server 2000 实例。大型 Web 站点和企业级数据处理系统通常会生成大量的数据库处理,超出了一台计算机的支持能力。在这些

28、大型系统中,数据库服务由组成数据库服务层的一组数据库服务器提供。SQL Server 2000 不支持采用平衡负荷的聚集形式建立数据库服务层,但支持跨自主服务器组分存数据的机制。尽管每个服务器需分开管理,但组内的各个服务器可共同分担数据库处理负荷。共享同一工作负荷的一组自主服务器称为服务器联合体。3.4.5 JDBC 技术数据库通信接口采用JDBC(Java Database Connectivity,Java 数据库连接)。JDBC是一组 API,定义了用来访问数据库源的标准JAVA 类库,使用这种类库可以使用一种标准的方法、方便地访问数据库资源。JDBC 是用于执行 SQL 语句的 Jav

29、a应用程序接口,由一组用 Java语言编写的类与接口组成,在JSP中将使用 JDBC 来访问数据库。JDBC 是一沈阳工程学院毕业论文第 3 章 系统总体设计-9-种规范,它让各数据库厂商为Java程序员提供标准的数据库访问类和接口,这样就使得独立于 DBMS 的 Java应用程序的开发工具和产品成为可能。JDBC 的目标是使应用程序开发人员使用JDBC 可以连接任何提供了JDBC 驱动程序的数据库系统,这样就使得程序员无须对特定的数据库的特点有过多的了解,从而大大简化了和加快了开发过程。一般的 Java开发工具都带有 JDBC-ODBC 桥驱动程序,这样,只要是能够使用ODBC访问的数据库系

30、统,也就能够使用 JDBC 访问了。有趣的是,不同于 ODBC 是 Open Database Connectivity 的简称,JDBC 并不是 Java Database Connecivity的简称,而是 SUN 的注册商标,至少官方说法是这样的。JDBC API 为访问不同的数据库提供了一种统一途径,像ODBC 一样,JDBC 为开发者屏蔽了一些细节问题。另外,JDBC 对数据库的访问也具有平台无关性。沈阳工程学院毕业论文第 4 章 数据库设计-10-第 4 章 数据库设计4.1 数据库分析数据库的设计,在程序的开发中起着至关重要的作用,它往往决定了在后面的开发中进行怎样的程序编码。一

31、个合理、有限的数据库设计可降低程序的复杂性,使程序开发的过程更为容易。本系统是一个中型的供求信息网站,考虑到开发成本、用户信息量客户需求等问题,决定采用 Microsoft SQL Server 2000 作为项目中的数据库。Microsoft SQL Server 是一种客户/服务器模式的关系型数据库,它具有很强的数据完整性、可伸缩性、可管理性、可编程性;具有均衡与完备的功能;具有较低的价格与性能比。SQL Server数据库可以大容量地存储数据,并对数据进行合理地逻辑布局,应用数据库对象可以对数据进行复杂地操作。SQL Server 2000也提供了 JDBC 编程接口,这样可以非常方便地

32、应用 Java来操作数据库。4.2 数据库概念设计E-R 模型是对现实世界的一种抽象。它的主要成分是实体、联系和属性。使用这三种成分,我们可以建立许多应用环境的E-R 模型。现在划出本系统所使用的数据库实体,它们分别为根贴实体、回复贴实体、版面实体、类别实体和用户实体。下面将介绍几个关键实体的E-R 图。1根贴实体根据实体包括编号、所属版面、标题、内容、发布者、发布时间、表情、对贴子进行操作的时间、是否为置顶贴子、被置顶的时间、是否为精华贴子和被设置为精华贴子的时间等属性。其中是否为置顶贴子与是否为精华贴子属性分别用来标识贴子是否被设置为置顶或是精华贴子,1 表示“是”,0 表示“否”。根贴实

33、体的 E-R 图如图 4.1 所示。沈阳工程学院毕业论文第 4 章 数据库设计-11-根贴内容标题所属版面编号表情发布者发布时间是否为置顶帖子被置顶的时间回复贴内容标题根贴编号表情回复者回帖时间间图 4.1根贴实体 E-R 图2回复贴实体回复贴实体包括编号、根贴ID、标题、内容、回复者、回帖时间和表情属性。回复贴实体的 E-R 图如图 4.2 所示。图 4.2回复贴实体E-R 图3版面实体版面实体包括编号、所属类别ID、版面名称、版主和版面公告属性。版面实体E-R 图如图 4.3 所示。沈阳工程学院毕业论文第 4 章 数据库设计-12-论坛类别介绍类别名称编号版面版主版面名称所属类别ID 编号

34、版面公告图 4.3回复帖子信息实体图4论坛类别实体论坛类别实体包括编号、类别名称和介绍属性。论坛类别实体的E-R 图如图 4.4 所示。图 4.4论坛类别实体E-R 图ER 模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:n,m:n,还是 1:1 等。还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。本系统的 ER 模型如图 4.5 所示:沈阳工程学院毕业论文第 4 章 数据库设计-13-tb_bbs(根贴信息表)

35、tb_bbsAnswer(回复贴子信息表)tb_board(版面信息表)tb_class(论坛类别信息表)tb_user(用户信息表)图 4.5 ER 模型图4.3 数据库逻辑设计根据数据库概念设计,可以创建与实体对应的数据表。本系统中所包含的数据表的结构图如图 4.6 所示。图 4.6 db_luntan 数据库所包含的数据表结构图本系统共包含 3 个数据表,下面分别介绍这些表的结构。1tb_bbs(根贴信息表)db_luntan 主题帖子所属回复帖子对应版块1n m 1 用户管理员浏览管理m n mn 沈阳工程学院毕业论文第 4 章 数据库设计-14-根贴信息表用来保存发布的全部根贴信息,

36、该表的结构如表4.1 所示。表 4.1 tb_bbs 表的结构字段名数据类型是否为空是否主键默认值描述bbs_id int(4)No Yes 帖子 ID(自动编号)bbs_boardID int(2)Yes(-1)帖子所属版面的ID bbs_title varchar(70)Yes NULL 帖子标题bbs_content varchar(2000)Yes NULL 帖子内容bbs_sender varchar(20)Yes NULL 帖子的发布者bbs_sendTime datetime(8)Yes NULL 帖子的发布时间bbs_face varchar(8)Yes NULL 帖子表情bb

37、s_opTime datetime(8)Yes NULL 对帖子进行操作的时间bbs_isTop varchar(1)Yes(0)是否为置顶帖子bbs_toTopTime datetime Yes NULL 帖子被置顶的时间bbs_isGood varchar(1)Yes(0)是否为精华帖子bbs_toGoodTime datetime(8)Yes NULL 帖子被置精华帖子时间2tb_board(版面信息表)版面信息表用来保存论坛中的版面信息,该表的结构如表4.2 所示。表 4.2 tb_board 表的结构字段名数据类型是否为空是否主键默认值描述board_id smallint(2)Ye

38、s Yes 版面 ID(自动编号)board_classID smallint(2)Yes NULL 版面所属类别的ID 值board_name varchar(40)Yes NULL 版面名称board_master varchar(20)Yes NULL 版面版主board_pcard varchar(200)Yes NULL 版面公告3tb_bbsAnswer(回复贴子信息表)回复帖子信息表用来保存回复帖子的信息,该表的结构如表4.3 所示。表 4.3 tb_bbsAnswer 表的结构字段名数据类型是否为空是否主键默认值描述bbsAnswer_id int(4)No Yes ID(自动

39、编号)bbsAnswer_rootID int(4)Yes NULL 回复帖子根帖ID 值bbsAnswer_title varchar(70)Yes NULL 回复帖子的标题bbsAnswer_content varchar(2000)Yes NULL 回复帖子的内容bbsAnswer_sender varchar(20)Yes NULL 回复帖子的回复者bbsAnswer_sendTime datetime(8)Yes NULL 回复帖子的时间bbsAnswer_face varchar(10)Yes NULL 回复帖子的表情沈阳工程学院毕业论文第 4 章 数据库设计-15-4tb_cla

40、ss(论坛类别信息表)论坛类别信息表用来保存论坛类别信息,该表的结构如表4.4 所示。表 4.4 tb_class 表的结构字段名数据类型是否为空是否主键默认值描述class_id smallint(2)No Yes ID(自动编号)class_name varchar(40)Yes NULL 论坛类别名称class_intro varchar(200)Yes NULL 论坛类别介绍信息5tb_user(用户信息表)用户信息表用来保存用户的信息,该表的结构如表4.5 所示。表 4.5 tb_user 表的结构字段名数据类型是否为空是否主键默认值描述id smallint(2)No Yes 用户

41、 ID(自动编号)user_name varchar(20)Yes NULL 用户名称user_password varchar(20)Yes NULL 用户密码user_face varchar(11)Yes NULL 用户表情user_sex varchar(2)Yes NULL 用户性别user_phone varchar(12)Yes NULL 用户电话user_OICQ varchar(14)Yes NULL 用户 OICQ user_email varchar(100)Yes NULL 用户的邮箱user_from varchar(200)Yes NULL 用户的来源user_ab

42、le varchar(1)Yes NULL 用户能力创建数据表后,还可以创建相关的数据表之间的关系,该关系实际上也反应了系统中各个实体之间的关系。设置了该关系后,当改变tb_user 数据表的 user_name字段时,tb_bbs数据表的bbs_sender 字段也会级联更新或删除;当改变tb_board数据表的board_id字段时,tb_bbs 数据表的bbs_boardID 字段也会级联更新或删除;当改变tb_class数据表的 class_id字段时,tb_board 数据表的 board_classID字段也会级联更新或删除。数据表之间的关系图如图4.7 所示。沈阳工程学院毕业论文

43、第 4 章 数据库设计-16-图 4.7 数据表之间的关系图tb_userPK id U1 user_name user_password user_face user_sex user_phone user_OICQ user_email user_from user_able tb_bbs PK bbs_id FK1 bbs_boardID bbs_title bbs_content FK2,I1 bbs_sender bbs_sendTime bbs_face bbs_opTime bbs_isTop bbs_toTopTime bbs_isGood bbs_toGoodTime tb_

44、bbsAnswer PK bbsAnswer_id FK1 bbsAnswer_rootID bbsAnswer_title bbsAnswer_content bbsAnswer_sender bbsAnswer_sendTime bbsAnswer_face tb_board PK board_id FK1 board_classID board_name board_master board_pcard tb_class PK class_id class_name class_intro 沈阳工程学院毕业论文第 5 章 系统详细设计与实现-17-第 5 章 系统详细设计与实现5.1 前

45、台设计由于前台功能模块较多,而各模块的实现过程都是类似的,所以对于系统前台,现在只介绍系统重点设计。5.1.1 前台页面设计与实现本系统中所有页面都采用了一种页面框架,该页面框架采用一分栏结构,分为4 个区域:页头、功能栏、内容显示区和页尾。网站前台首页面的运行结果如图5.1 所示。图 5.1前台首页面的运行结果沈阳工程学院毕业论文第 5 章 系统详细设计与实现-18-实现前台页面的设计需要分别创建实现各区域的JSP文件,如实现页头的top.jsp、实现功能栏的 menu.jsp、页尾文件 end.jsp和首页面中需要在内容显示区显示的default.jsp 等JSP文件。下面主要介绍前台框架

46、页面indexTemp.jsp的实现,实现页面显示代码如下:jsp:include page=/5.1.2 前台显示概述论坛的前台显示主要包括:首页面的论坛类别显示、某版面下根贴的列表显示、我的帖子的列表显示、精华帖子的列表显示、搜索后根帖的列表显示和根贴与回复贴内容的详细显示。其中在根贴的列表显示系列中,我的帖子、精华帖子和搜索这3 个功能的实现是相似的,最终都是生成一个查询SQL 语句,并通过执行该SQL 语句获取一个符合条件的信息集合,然后返回页面进行显示。不同的是它们生成SQL 语句的方式,列表显示我的帖子,需要获取当前登录用户的用户名,然后生成查询 SQL 语句;列表显示精华贴,要执

47、行的是一个固定、已知的 SQL 语句;列表显示搜索到的根贴,需要从页面表单中获取条件和搜索关键安后,才能生成SQL 语句。不仅如此,这 3 种功能的页面信息显示也是相同的,不同的是通过Struts 标签输出信息时所引用的对象不同。现在介绍首页面论坛类别显示、某版面下根贴的列表显示和根贴与回复贴内容的详细显示。5.1.3 查看首页面的论坛类别该页面的实现效果是:分类显示论坛类别,并以超链接形式显示属于该论坛类别中所有版面名称并显示当前版面的版主和一些帖子的相关信息,如图5.2 所示。沈阳工程学院毕业论文第 5 章 系统详细设计与实现-19-图 5.2首页面的论坛类别显示效果图在首页面中显示论坛类

48、别时,首先通过 Struts中的 logic 标签库中的 iterate标签遍历存储在 session范围的 List 集合对象,该List 集合对象是在处理用户访问论坛首页面时的请求处理类中实现的,其中存储的是封装了论坛类别信息的ActionForm;然后再使用bean标签库中的 write 标签输出从难从List 集合对象中遍历出的ActionForm 中的属性信息,即可实现论坛类别的显示。在页面中实现输出论坛类别的关键代码如下:/省略了输出论坛类别信息的代码/省略了输出版面信息的代码 沈阳工程学院毕业论文第 5 章 系统详细设计与实现-20-5.1.4 查看某版面中根贴列表该显示实现的效

49、果是:显示某个版面中所有的根贴。该显示方式将单独显示版面中的置顶帖子和其他帖子。对于置顶帖子的显示,将按照帖子被置顶的时间进行降序排列;对于其他帖子的显示,将按照帖子被操作的时间进行降序排列。每条根贴显示其状态、标题、回复数、发表者和最后回复信息,如图5.3 所示。图 5.3某版面中所有根贴的显示效果图当在首页面中单击以超链接形式显示的某个版面的标题时,将列表显示该版面中的根贴,该显示要将置顶帖子与其他帖子分类显示。实现该功能,首先需要获取当前版面中的根贴,这可通过当前版面的ID 值查询数据表获取,然后分别将获取的置顶帖子列表和其他帖子列表存储在session范围内,最后回到JSP页面通过 l

50、ogic 标签库中的 iterator 标签进行遍历输出。下面给出在 JSP页面中列表显示某版面中根贴的关键代码:/省略了输出置顶帖子的代码 /省略了输出其他帖子的代码 沈阳工程学院毕业论文第 5 章 系统详细设计与实现-21-5.1.5 查看根贴和回复贴内容该显示方式实现的效果图是:显示根贴的详细信息,并显示该根贴的所有回复帖,另外对每条帖子都显示发表者的部分信息,如图5.4 所示。图 5.4显示根贴及回复贴的详细显示效果图对于根帖的发表者的信息可通过从获取的根贴信息中取出根贴的发表者,然后将其作为查询条件查询用户信息数据表来获取,最后存储到session对象内。对于回复贴的回复者信息可设想

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁