免费预览已结束,剩余58页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论文)校园BBS的设计与实现DESIGN AND IMPLEMENTATION OFCAMPUS BBS学生学号 学生姓名 学院名称信电工程学院专业名称计算机科学与技术指导教师 徐州工程学院毕业设计(论文)徐州工程学院学位论文原创性声明本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。本人完全意识到本声明的法律结果由本人承担。论文作者签名: 日期: 年 月 日徐州工程学院学位论文版权协议书本人完全了解徐州工程学院关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所拥有。徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。徐州工程学院可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。论文作者签名: 导师签名: 日期: 年 月 日 日期: 年 月 日 摘 要当今社会网络迅猛发展,信息化的浪潮随之到来,社会逐渐步入网络时代。网站优势独特,它是信息化的过程中的重要载体。为了使信息的交流更加方便,开发了这个方便美观的交流系统,实现了一个功能相对齐全的论坛系统,网友可以自由地发表观点,分享热门话题,交流生活学习经验。本论坛对于论坛开发的技术分析、需求分析和可行性分析、系统设计、详细设计以及对网站的测试与维护都有详细的论述和实现过程。论坛结合JAVA技术,使用jsp语言进行开发,能够满足前台开发需要。论坛采用B/S体系结构,通过互联网在浏览器上就可以查看论坛。数据库采用SQL2000数据库,SQL2000可以为数据库创建不同的表,解决了会员模块,帖子模块以及后台模块的管理。该论坛功能较丰富,网友可以自由地发表自己的观点以及对论坛的主题发表意见,查看发帖者的具体信息。管理员可以通过后台管理模块在后台对帖子置顶、加精;修改会员权限、会员资料;以及对论坛类别和版面进行修改。本套论坛的优点在于它的易维护性、可扩展性和高安全性,可作为校园里非常理想的BBS论坛。关键词 JAVA;SQL2000;JSP;论坛AbstractNowadays networks is developing rapidly and the wave of information technology arrives,the contemporary society gradually come into the Internet age. With the unique advantages, the site is an important carrier to the process of information technology. In order to make the exchange of information more convenient, developers develope the convenient and aesthetic exchange system,achieving a relatively full-featured forum system, users can freely express their views and share a hot topic, exchange life and learning experience.This forum has developed and discussed in detail about the technical analysis, requirements analysis and feasibility analysis, system design, detailed design and testing and maintenance of the site. The forum is developed by using jsp language,which can meet the needs of the front development.The system is a combination of JAVA technology and it uses B / S architecture, through the Internet browser we can browse the forum. The Database uses the database of SQL2000, it can create different tables for the database, so as to solve the membership module,post module and background module. This forums function is also abundant, users can freely express their views and express their views on the theme of the forum, view specific information of the poster. Administrators can top posts and set up the essence of posts;modify membership privileges, membership information;and modify the forum categories and forum through the admin module in the background. The advantage of this set of the forum lies in its ease of maintenance, scalability and security, it can be used as the ideal campus BBS forums.Keywords JAVA SQL2000 JSP BBS III徐州工程学院毕业设计(论文)目 录1 绪论1 1.1总体概述1 1.2 开发背景1 1.3 开发目的2 1.4研究内容22 技术分析3 2.1 开发语言综述3 2.2 SQL2000数据库的选用3 2.2.1 SQL2000数据库特点3 2.2.2 SQL2000功能语句4 2.3 技术分析综述53 需求分析与可行性分析6 3.1 系统需求分析6 3.1.1 系统开发运行环境6 3.1.2 业务描述6 3.1.3 系统功能概述7 3.1.4 数据流程7 3.2 可行性分析8 3.2.1经济可行性8 3.2.2 技术可行性9 3.2.3时间可行性(项目开发计划)9 3.3系统总体结构分析结论94 系统设计10 4.1 数据库设计10 4.1.1概念模型设计(E-R图)10 4.1.2数据库表及关系建立13 4.1.3详细数据库结构设计13 4.2 系统概要设计15 4.2.1功能模块设计15 4.2.2系统的组件设计17 4.3系统设计综述185 详细设计19 5.1 会员模块实现19 5.1.1会员注册模块19 5.1.2会员登录模块20 5.1.3 查看会员信息模块21 5.1.4会员查找模块21 5.1.5会员模块综述22 5.2 帖子模块实现23 5.2.1帖子发表模块23 5.2.2帖子回复模块23 5.2.3查找帖子模块24 5.2.4帖子模块综述24 5.3 后台管理模块实现25 5.3.1会员管理模块25 5.3.2帖子管理模块26 5.3.3论坛管理模块29 5.3.4后台管理模块综述31 5.4 系统设计总结316 系统的调试与测试33 6.1 测试概述33 6.1.1软件测试的目的33 6.1.2软件测试的任务33 6.1.3测试环境33 6.2 单元测试34 6.2.1黑盒测试34 6.2.2白盒测试34 6.2.3模块接口测试35 6.3系统测试综述36结论37致谢38参考文献39附录45II徐州工程学院毕业设计(论文)1 绪论BBS是Bulletin Board System的缩写,即电子公告板。BBS的界面结合了文字与图片,给网友提供了讨论话题的虚拟场所。随着网络时代的到来,以互联网为基础的网上论坛逐渐成为人们发表言论的一个平台。通过前期的信息采集,理解了它的发展历程,特点以及背景,从而明确了自身的开发目的。为了实现该目的,确定了研究内容,为前期设计打下了基础。1.1总体概述当今世界计算机技术飞速发展,尤其是基于互联网的发展,因而这种基于互联网的应用软件逐渐取代了单纯应用于个人计算机的软件,这种基于互联网的软件有两种结构,一种是客户端服务器的C/S结构,他的特点是工作效率高,被广泛运用于局域网中。而本设计采用的是另一种称为浏览器服务器的B/S结构,它的特点是可以通过浏览器来实现程序运行,使用该结构的系统可以直接运行在客户端的浏览器之上,其优点在于开发系统的效率高,不需要安装客户端,易维护性强,节约了开发与维护成本,可以使各种不同工作环境下的用户都能够对共同的数据库进行各种操作,受到越来越多的开发者的青睐。随着Internet技术的不断发展,以及用户群爆炸性地增长,网络逐渐摆脱了其单一的信息获取来源的定位,人们可以在其中发表观点、交流经验,其中,网上论坛的地位凸显。论坛站点使用越久,其信息资源越丰富,这些资源包扩用户的观点与意见,还有各种成型的理论知识,因而Web信息库一定程度上依赖于论坛。在网上论坛发展的30多年间,各种形式多样的网上论坛己经彻底取代了当初单一的电子公告板系统。随着网络的迅速发展,论坛形式多样,生活工作的每一个方面都体现在当中,各行各业都有论坛。互联网改变影响着我们的生活,逐渐发展成为一个可以相互交流的空间,网上论坛正是这种供人们进行交流的网络空间的载体,丰富着人们的生活。1.2 开发背景1978年最早的一套BBS系统在美国芝加哥开发出来,随着科技的发展,又诞生了Bulletin Board System和大众信息系统(Peoples Message System)2种BBS系统,这两种系统都是基于苹果机的。1982年,Buss Lane 为IBM个人计算机编写了一个原型程序,该程序由Basic语言编写,后经过Capital PC User Group(CPCUG)的Communication Special Interest Group会员的共同努力,他们于1983年开发出基于个人计算机系统的BBS,RBBS-PC便是在此基础上完成的,这是一套真正意义上的第一版BBS系统。RBBS-PC源程序是公开的,这使得它的维护变得简单方便,这一版系统也为今后BBS的开发提供了良好的框架。国内BBS的发展始于1991年,那一年诞生了中国第一个BBS系统。但是人们对BBS的真正了解是在1995年,由于计算机软硬件的价格下降,人们才开始大规模接触计算机,BBS开始经历飞跃式发展。BBS站大体上可以分为2种:一种是商业BBS站,另一种是业余BBS站。使用商业BBS站并不是免费的,并且与业余站相比,它提供的服务并没有什么优势,所以两种性质的BBS用户数量相差不大。国内的BBS站,大多数还是大型综合性BBS站。随着计算机以及网络宽带的普及,BBS的发展将步入新的台阶,并且大趋势是对专注于领域方面的BBS的需求将会慢慢增加。但发展过程难免出现弯路,BBS的发展也出现了相应的问题,例如使用的BBS的技术都是直接从国外拿现成的使用,没有一定的技术支持与创新,即使一些相关的资料也已经被引进,但是这也仅仅是一小部分,对于BBS的发展还是略显不足的。另外站台与站台之间的相互模范甚至抄袭,也导致了BBS在结构内容的相似。 JSP MODEL1模式的特点主要是将控制层与表示层合二为一,使用这种模式开发简单,国内大多数BBS采用这种模式,但是它的缺点也很明显:机动性很差,比如可扩展的程度很小,维护也不方便,这在一定程度上限制了BBS的发展。于是在这种情况下,本文提出了目前比较流行的BBS论坛,本套论坛的优点在于它的安全性高,易维护,可扩展性好,是理想的校园BBS系统。1.3 开发目的综上所述,一些具有前卫风格的校园BBS随着互联网的普及在各大高校建立,本系统吸收了一些论坛的精华部分,采用B/S模式设计开发。开发目的除了作为在校学生、老师发布消息,共享资料,娱乐休闲的平台,也可成为对外展示校园的一个“活广告”。更重要的是校园论坛整合了多种多样的学习资源,丰富了学生的课外学习与生活,创造了良好的学习环境。论坛倡导以学生为主的学习方式,学生可以通过某个特定的板块,参与讨论某些特定话题的讨论,可以通过发表帖子、回复帖子等方式来交换意见、交流经验,使之逐渐成为学生之间交流信息,共享资源,娱乐休闲的空间。1.4研究内容校园BBS的设计与实现,根据前期的调查与研究,其研究内容主要分为:1. 论坛开发语言的选择,选择流行合适的语言;2. 数据库的选择,校园BBS属于中小型论坛,选用一些合适的较小的数据库;3. 数据库的设计,主要设计不同的表,用来存放论坛的信息,比如会员信息,帖子信息等等;4. 系统的功能设计,包括会员模块,帖子模块,后台管理模块等等,通过设计这些模块,来满足论坛一些基本功能。2 技术分析本系统结合JAVA技术,选用当今主流的网站开发技术jsp语言进行开发,这种语言能够使应用程序与各种工作环境协同工作;开发者的代码保存在服务器端,能够保护代码,信息的完整传输又保证web浏览器的完全可用性。SQL2000的特点是关系型数据和结构化数据,选用SQL2000,是利用其数据存储的安全高效,使用户可以用来构建满足自身需求的数据库。2.1 开发语言综述本系统结合了JAVA技术,在J2EE平台下开发程序,该平台具有以下优点:1.简化结构:EJB是sun的服务器端组件模型,J2EE平台支持这种简化的、基于组件开发模型,这就使得应用程序只需开发一次,便可以在不同平台移植,该模型可以被所有遵循J2EE标准的服务器所支持。EJB组件使帮助程序员高效的编写软件,即使EJB体系结构复杂,另外它还能够实现系统级的服务,免除了访问系统服务的代码的编写。 2.提高开发效率:J2EE允许开发人员不考虑服务端的工作,可以只考虑逻辑上的开发,从而节约了程序开发时间。开发人员就可以对应用程序开并行开发,同时进行多项工作,有助于高效的开发程序。3.可移植性强:基于J2EE的应用程序可移植性强,它不依赖具体的工作环境,因而只需要对程序进行一次开发,就可以在各种平台运行运行该程序。并且在Bean和支持该Bean的容器之间,EJB体系结构规定了一套标准化接口,使得开发人员能够在不同的操作环境下移植Bean,不需要重新编写源代码。4.重用性好:EJB模型规定了各个软件组件彼此都是独立的,服务器端应用程序可以由这些软件组件组成,而客户端应用程序可由JavaBean装配出,这两者是相通的,因而软件重用性好。5.易于维护:各个软件组件彼此是独立的,决定了可以对他们进行独立的开发维护,因此只需要开发增加某个新的组件,就可以为应用程序添加新的功能。系统设计是基于这些单独的组件的,也就简化了对应用的开发维护。2.2 SQL2000数据库的选用主要分析数据库的特点,是否适合于中小型论坛的开发,以及它的功能语句,使用这些语句能够实现大部分的论坛功能,SQL2000兼备这两点,是比较理想的后台开发工具。2.2.1 SQL2000数据库特点SQL Server是指关系数据库管理系统(DBMS),主要是由是微软公司研发的产品,并于1988年推出该系统。SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的版本。SQL Server 特点:1.完全的 Web 支持,通过Web可以轻松访问数据库。 2.可向上伸缩,向外扩展,伸缩性强。3.编程接口工具非常全面,有利于开发人员的开发与设计。 4.SQL Server与Windows NT集成,SQL Server也可以很好地与Microsoft BackOffice产品集成。 5.使用SQL2000管理数据库可以简化管理。2.2.2 SQL2000功能语句SQL Server功能语句与论坛操作紧密联系,丰富了论坛的功能。1. 基本表的建立与修改:应用于建立整个论坛的基本表,包括用户基本资料表,用户详细资料表,论坛文章表,论坛版区表,论坛初始化信息表等;例如建立用户基本表:CREATE TABLE tb_user id smallint(2) PRIMARY KEY, user_name varchar(20), user_passwd varchar(20), . .其中id为主键,包括user_name,user_passwd等列。2. 索引的建立:应用于搜索帖子与会员等模块;例如搜索会员:SELECT *FROM tb_userWHERE user_name=yangkai该语句是以用户名yangkai为索引来搜索该用户的基本信息。3. 数据查询语句:应用于搜索帖子,查看帖子,查看会员信息等模块;例如搜索帖子:SELECT *FROM tb_bbsWHERE bbs_sender=yangkai;该语句以发帖者的用户名yangkai来搜索该用户发表过的帖子。4. 数据更新语句:应用于会员注册,更新用户表,发帖删帖,跟新帖子表,修改论坛与版面信息,跟新论坛表等模块;例如会员注册:INSERTINTO bbs_userVALUE(2,qianjun,123.)该语句用于将用户名ID为2,user_name为qianjun,user_passwd为123等新用户信息加入到用户基本信息表中。5. 数据控制语句:应用于管理员对版主与用户授权等功能;例如管理员对版主授权:GRANT SELECT5 ON TABLE bbs_bbs TO User1该语句将论坛文章表的SELECT权限授予User1,使其可以查看论坛文章。2.3 技术分析综述综上所述,这些成熟的框架和优秀的设计思想,为本系统的设计实现提供了技术条件。随着时代的发展,计算机等基础设施也在不断更新换代,为系统的开发提供了硬件基础。3 需求分析与可行性分析通过对技术的分析,在了解BBS研究内容的基本上需要开发者分析用户的需求,以用户需求为基准进行可行性分析,主要从经济,技术和时间等三方面着手,评估整个系统,完成系统模块的划分与数据的流程等等。3.1 系统需求分析系统需求分析需要明确开发环境,分析用户的需求,确定系统模块的划分,系统实现那些功能,并确立数据流图。3.1.1 系统开发运行环境鉴于系统的开发语言和数据库,采用如下的开发环境:开发环境:Windows 7 JDK1.6 MyEclipse Tomcat硬件实现:Pentium2.4G 2G内存 250G硬盘开发语言: Java数 据 库: SQL2000开发工具: MyEclipse8.5 预期成果:一个可扩展的基于WEB的 BBS论坛3.1.2 业务描述对于访问论坛的用户,可分为注册会员和为注册的临时用户,这两种用户有着不同的权限,比如临时用户只能对帖子进行查看,而注册会员除了查看帖子之外,还可以发帖,回复,查找用户,并且可以对自己的注册资料进行修改等等。系统的用例图如图3-1。会员用户临时用户浏览帖子发表帖子回复帖子修改资料会员搜索管理员会员管理帖子管理论坛信息管理图3-1 系统用例图3.1.3 系统功能概述本系统是一套网上交流的BBS软件,根据用户的需要和实际的管理条件,该系统应由会员模块,帖子模块和后台管理等几个模块所构成,用户可以注册登录论坛,查看修改自身信息,以会员身份登录的用户可以发表帖子,回复帖子,而管理员可以对用户和帖子和论坛信息进行相关的管理。鉴于本系统的性质,系统应该实现以下功能:1.用户功能实现:用户的登录;用户的注册;用户的查找;2.帖子功能实现:帖子的发表;帖子的回复;帖子的查找;3.后台管理:用户的管理;帖子的管理;论坛信息的管理;图片的管理。3.1.4 数据流程本系统是为了提供给广大用户一个网上交流的平台,所以论坛的流程是以用户为中心进行的。数据流图是针对系统的逻辑模型而言,能全方位的描述系统的逻辑模型,它使用少数一些特定的符号全面的表示出系统的信息,包括它的的流动、处理和存储情况。数据流图具有两种特点:1. 抽象性:它无视物质实体,完全没有将其表现出来,只表现数据在系统逻辑中的不同流向与作用。2.概括性:表现在它强大的整合信息的能力,可以联系信息中的各种不同业务处理过程,将其联系起来,形成一个整体。数据流图由以下四种基本元素组成,既外部实体、数据流、处理(功能)、数据存储等,数据流图中所用的符号如图3-2,这四部分分别为外部实体,处理功能,数据流,数据存储。 外部实体 处理功能 数据流 数据存储图3-2数据流图四部分BBS论坛系统的数据流程图如图3-3所示。用户查看帖子P2F1帖子资料P3回复帖子P1发表帖子P4搜索帖子P5搜索用户F2用户资料P6资料修改(1)(3)(2)(4)(5)(5)(6)(7)(8)(9)(10)(11)(12)(13)图3-3数据流程图说明:(1)访问信息 (2)(3)(10)(11)用户信息 (4)发表帖子信息 (5)更新帖子信息 (6)搜索信息 (7)获取帖子信息 (8)回复信息 (9)搜索用户 (12)更新用户信息 (13)获取用户资料3.2 可行性分析可行性分析是从各个方面分析所要开发项目是否可行,条件是否允许,主要的有经济可行性,技术可行性,时间可行性等等。3.2.1经济可行性经济可行性研究是对前期的投入能力进行分析,预算开发系统和维护系统所需要的开支,以及评估程序完成后投入到市场潜在的收益。由于本系统是作为毕业设计由自己开发的,学校可以提供机房,互联网等软硬件设施,购买和安装设备的费用:计算机硬件、系统软件、 机房、电源等;软件开消耗品费用:系统开发所用软件在学校机房均有安装,系统正常运行所用消耗品,例如电费,网费,维护费等开支。所有开支都不大,所以作业在线批改与答疑系统经济上是可行的。3.2.2 技术可行性技术可行性要指在现有的技术条件下,能否完成程序的开发,完成程序开发所需要的软硬件是否齐全,是否可用等。校园BBS的设计与实现用的是jsp开发语言,调试相对简单,加上Sqlserver2000数据库在国内数据库系统的广泛应用,实现较为方便。软件方面:由于目前B/S模式软件相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。3.2.3时间可行性(项目开发计划)本系统的难点在于三大框架的结合使用,但目前有很多优秀的书籍可供参阅,且参加过类似项目的开发,预计本系统在规定时间内,基本能够完成。开发计划如下:2012.2.27-3.2 调研2012.3.3-3.11 资料查阅2012.3.12-3.25 方案设计2012.3.26-4.29 编写程序2012.4.30-5.31 撰写论文3.3系统总体结构分析结论通过对系统框架及数据库的选择,和总体的需求分析,完成了前期对系统模块的划分,数据的流程,以及一些可行性的分析。在此基础上,可以系统的对数据库和功能模块进行概要设计。4 系统设计在前期的系统结构分析的基础上,设计数据库以及对系统进行概要设计,前者涉及到数据库表与关系的建立,后者包括系统的详细功能模块设计,系统的界面设计与系统组件设计。4.1 数据库设计数据库设计是指在一个特定的应用环境中,选择最合适的的数据库,建立相应的数据库以及其中的表,用来存放系统中的数据,满足需求分析中各种信息数据的处理和加工。数据库和设计概述如下:1.数据库是整个系统的基础,把系统中各种各样的的数据按照要求组织起来,提供给用户操作信息、搜索数据的功能,使用户通过系统可以快速、精确地从数据库中获取相应的信息,也是信息系统的核心。2.信息系统的各个部分的紧密结合是依赖于数据库实现的,它也规定了这些部分结合的规则,是信息整合的关键。3.数据库设计是信息系统开发和建设的重要组成部分。4.1.1概念模型设计(E-R图)数据模型抽象的表示出数据的特征,它从抽象层次上展示了系统的逻辑结构和数据关系,描绘了整个系统的抽象架构,使之用来为数据库建表与数据库的操作提供依据。描述了数据结构、数据操作及数据约束。E-R图是从概念方面表现出实体间关系的模型,这数据库模型图则与E-R是有和大差别的。ER图的坚持的目标是:项目的相关人员都能看懂E-R图。ER图由不同实体类型、关系、特性和类型构成。实体是指现实中的实物,比如地址,或者更抽象的但是一定是有具体意义的实物。特性用于描述实体,关系用于实体之间:实体:现实世界中的事物;属性:事物的特性;联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。1. 用户基本信息实体及其属性:用户(代理主键,用户名,密码,用户头像,用户性别,联系电话,OICQ,电子邮箱,地址,用户权限),如图4-1所示。代理主键用户名密码用户头像用户性别 用户 电子邮箱用户权限地址OICQ联系电话图4-1用户基本信息实体图2. 论坛类别实体及其属性:论坛(代理主键,论坛类别,论坛介绍),如图4-2所示。代理主键 论坛介绍 论坛类别 论坛图4-2论坛类别实体图3. 论坛版面实体及其属性:板块(代理主键,所属论坛类别,版面名称,版主,版区公告),如图4-3所示。版面名称代理主键所属论坛类别 板块版面公告版主图4-3论坛版面实体图4. 论坛初始化信息实体及其属性:论坛(初始化标题,初始化信息),如图4-4所示。初始化标题 论坛初始化信息图4-4论坛初始化信息实体图5. 论坛文章实体及其属性:帖子(代理主键,所属版面,帖子标题,帖子内容,发帖者,发帖时间,发帖者头像,帖子提前时间,是否置顶,置顶时间,是否为精,加精时间),如图4-5所示。点击次数主贴ID父贴ID回复数量版区名字版区ID 帖子发表者IP最后回复时间发表时间文章内容文章字节数文章说明图4-5论坛文章实体图6. 论坛回帖实体及其属性:回复贴(代理主键,根贴ID,回复主题,回复内容,回复者,回复时间,回复者头像),如图4-6所示。回复内容回复主题根贴ID代理主键 用户 回复着头像回复者回复时间图4-6论坛回帖实体图7.整个系统的ER如图4-7所示。用户M发表N帖子 详细资料11N管理管理员 1 N添加1修改论坛图4-7 系统E-R图4.1.2数据库表及关系建立根据系统需求分析就可以创建一个数据库,依次建立下列表结构:1.用户基本资料表2.用户详细信息表3.论坛文章表4.论坛版区表 5.论坛初始化信息表 (1)用户基本信息表和用户详细信息表是一对一的关系,一个用户只对应一个详细的信息表。(2)用户基本信息表和文章表是一对多的关系,即一个用户可以发表多篇文章和回复。(3)论坛版区表和论坛文章表是一对多的关系,在一个论坛中可以含有多个文章和回复。4.1.3详细数据库结构设计根据4.1.1概念模型设计(E-R图)设计数据库的基本表,分别设计了用户基本资料表,用户详细信息表,论坛文章表,论坛版区表,论坛初始化信息表。1.用户基本资料表用户基本资料表中存放的是用户登陆时所需要或者记录用户的基本信息,包含比如登陆名,密码,邮箱等。用户基本信息表的建立主要是记录用户最常用的一些信息。用户基本资料表如表4-1所示。表4-1 tb_user字段名数据类型长度主键外键可空说明idsmallint2是否否代理主键user_namevarchar20否是是用户名user_passwordvarchar20否否是密码user_facevarchar11否否是用户头像user_sexvarchar2否否是用户性别user_phonevarchar12否否是联系电话user_OICQvarchar50否否是OICQuser_emailvarchar 100否否是电子邮箱user_fromvarchar200否否是地址user_ablevarchar1否否是用户权限2.论坛类别表论坛类别表是存放的是论坛中版块信息,区分他们也靠表中的某个字段来实现的,具体实际的设计如下。论坛类别表如表4-2所示。表4-2 tb_class字段名数据类型长度主键外键可空说明class_idsmallint2是是否代理主键class_namevarchar50否否是论坛类别class_introvarchar200否否是论坛介绍3.论坛版面表论坛版面表中存放的是论坛各个类别下的版面信息,建立此表的目的是将每个论坛类别细分为不同版面,使整个论坛分区更详细更具实用性。论坛版面表如表4-3所示。表4-3 tb_board字段数据类长度主键外键可空说明board_idint4是是否代理主键board_classIDsmallint2否否是所属论坛类别board_namevarchar50否否是版面名称board_mastervarchar20否否是版主board_pcardvarchar 200否否是版面公告4.论坛初始化信息表论坛初始化信息表是存放初始化信息和管理员的帐号密码等信息,初始化信息是在论坛在加载过程中读取的或者以后经常用的一些信息。论坛初始化信息表如表4-4所示。表4-4 tb_config字段名数据类型长度主键外键可空说明IDvarchar50是否否初始化标题ConfContexttext50否否否初始化信息5.论坛帖子表论坛帖子表存放的是用户所发表的帖子信息,也包括帖子题目,内容,是否为精等等。而在数据库的设计中主要问题是鉴别帖子信息和所属论坛类别。论坛帖子表如表4-5所示。表4-5 tb_bbs字段名数据类型长度主键外键可空说明bbs_idint4是是否代理主键bbs_boardIDint4否否是所属版面bbs_titlevarchar70否否是帖子标题bbs_contentvarchar2000否否是帖子内容bbs_sendervarchar20否否是发帖者bbs_sendTimedateTime8否否是发帖时间bbs_facevarchar10否否是发帖者头像 续表4-5bbs_opTimedateTime8否否是帖子提前时间bbs_isTopvarchar1否否是是否置顶bbs_toTopTimedateTime8否否是置顶时间bbs_isGoodvarchar1否否是是否为精bbs_toGoodTimedateTime8否否是加精时间6.论坛帖子回复表论坛帖子回复表是存放会员回复某个帖子信息的表,主要包括回复者的用户名,回复主题,回复内容等等,具体设计如表4-6所示:表4-6 tb_bbsAnswer字段名数据类型长度主键外键可空说明bbsAnswer_id int4是否否代理主键bbsAnswer_rootID int4否否是根帖IDbbsAnswer_title varchar40否否是回复主题bbsAnswer_contentvarchar2000否否是回复内容bbsAnswer_sender varchar20否否是回复者bbsAnswer_senderTdateTime8否否是回复时间bbsAnswer_face varchar10否否是回复者头像4.2 系统概要设计根据需求分析的结果,对系统进行详细的概要设计,主要包括功能模块设计,系统界面设计与系统组件设计。4.2.1功能模块设计绘制出的用例图,将本系统分为三个大的模块,他们分别是会员模块,帖子模块和后台管理模块。本系统的功能层次图如图4-8所示。图4-8系统功能层次图如图4-8,系统实现了如下的功能:1.会员模块(1)会员登陆模块游客必须注册会员后,通过此模块输入账号密码才能登陆论坛,登陆成功后便以会员身份浏览论坛,行使会员的功能等等。(2)会员注册模块没有注册会员的用户,可以通过此模块注册成为会员,注册成功后便可以会员身份登陆论坛,使用会员功能。(3)会员查找模块已登录的会员可以通过此模块,查找其他会员信息,查找后可以查看对方的资料,获取对方的联系方式等等,增进会员之间的相互了解。2. 帖子模块(1)帖子发表模块已注册的会员在登陆后,可以通过此模块发表帖子,帖子发表成功后,会在发帖的板块顶部,供其他会员浏览、回复。(2)帖子回复模块会员在发表完帖子后,任何会员便可查看相关帖子,并能回复已发表的帖子。(3)帖子查找模块会员可以通过此模块,根据具体的需求,比如帖子的具体内容,查找相应的帖子。3.后台管理(1)帖子查找模块此模块和帖子模块中的帖子查找类似,不同的是管理员的搜索条件更加丰富,搜索帖子相对于普通用户来说更容易。(2)帖子管理模块管理员通过该模块对帖子进行管理,如果发表帖子有违规内容时,管理员可以删除帖子,如果看到优秀的帖子,可以对其进行置顶,加精等操作。帖子管理如图4-9所示。帖子管理模块帖子修改帖子删除帖子锁定帖子置顶帖子加精图4-9帖子管理模块功能层次图(3)会员管理模块管理员可以通过此模块,对会员进行管理,可以修改或者删除违规用户的资料。(4)论坛管理模块管理员可以通过此模块,对论坛的类别以及版区进行添加,创建,删除等操作。(5)图片管理模块管理员可以通过此模块管理论坛中的图片,以及用户的头像等等。4.2.2系统的组件设计在整个系统中,为了解决诸如中文显示乱码此类的问题,本系统需要设计一些组件,来解决相关的问题。1.过滤器组件Java的内核和class文件是基于unicode的,这是Java具有优秀的跨平台性的原因所在,单同时也带来了一些问题,比如中文乱码。这主要是由Java程序与其他一些诸如开发环境结合而引起,而且JSP文件编译时也可能产生乱码。有些Java(包括JSP)源文件中本身是有中文参与编写的,而Java和JSP源文件的是以字节流为基础保存的,如果在编译链接Java和JSP文件的过程中,源文件的编码方式和系统的编码方式不相同,就会出现乱码。Jsp页面出现乱码分为两种情况:一是未指定使用字符集编码,二是编码字符集设置不一致。为了解决此类问题,需要设计一个组件来解决此类问题,每次请求和响应到达客户和服务器端时,都先经过此过滤器对字符进行过滤如图4-10所示。发送请求用户过滤器(对字符进行过滤)服务器返回响应图4-10字符过滤器原理图2.权限管理组件在论坛中的的用户一定会遇到关于权限的问题,比如没有登陆的用户只可以查看帖子,而即使登陆的用户,也只可以对自己应有的权限进行操作,不可以操作管理员的功能。解决此类问题,本系统是通过判断特定的session来判断用户的权限,当用户登陆成功后,组件会发送相应的用户session,之后每次用户对论坛进行操作,都要先通过session,来判断用户的权限。如图4-11所示:用户对论坛操作判断文献是否通过 Y返回窗口服务器 N图4-11权限判断流程3.JSP标签组件由于本文是基于MVC模式架构,所以在JSP网页中不应存放过多的逻辑判断,当本系统JSP网页中必须存有JAVA逻辑代码时,本系统设计了一些JSP标签来替代这些逻辑代码。4.3系统设计综述通过数据库设计和系统概要设计,理清了后台开发工具与语句,也对整个系统的模块有了比较细致的规划,接下来就是对每个模块的详细设计。5 详细设计详细设计的主要任务是编码,是系统生命周期中继系统设计之后的阶段,编码过程是使用选定的程序设计语言,把经过可行性分析和系统设计后所得到的以程序设计说明书体现的信息处理过程描述后,处理成可以在开发工具中执行的代码。5.1 会员模块实现会员模块由三个子模块组成,分别是注册模块,登录模块,查看会员信息模块。5.1.1会员注册模块1.模块描述:在会员模块的设计中,首先完成的是业务逻辑层的相应action类的编写,之后在通过具体的需要,编写相应的数据库访问DAO。在一切结束之后,从DAO和业务逻辑类中抽象出接口,通过IOC对接口进行对象注入。会员注册模块如图5-1所示。图5-1 会员注册界面2. 设计思想(1)输入用户名时,可能当前填写的用户名已被占用,所以需要判断当前用户名是否存在,这是第一个关键点。调用sql语句,根据当前用户名得到数据库中用户信息“sql”,再调用myOp.OpUserSingleShow方法判断当前用户信息是否与数据库中信息相同。设计代码如下:String userName=Change.HTMLChange(regForm.getUserName();Obj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年淮南辅警招聘考试题库含答案详解(巩固)
- 2025年郑州辅警招聘考试题库附答案详解
- 2025年金昌辅警协警招聘考试备考题库附答案详解(研优卷)
- 2025年荆州辅警招聘考试真题及答案详解(名师系列)
- 2025年青海辅警招聘考试真题含答案详解(典型题)
- 2025年齐齐哈尔辅警协警招聘考试真题及完整答案详解一套
- 2025年荆州辅警协警招聘考试真题附答案详解(a卷)
- 2025年辽宁辅警协警招聘考试真题含答案详解(基础题)
- 2025年红河州辅警协警招聘考试备考题库含答案详解(能力提升)
- 2025年鹤岗辅警招聘考试真题附答案详解(培优)
- 辽宁交通高等专科学校-单招《职测》考前特训复习题库(含答案)
- 战伤救护理论考核题库
- 中文工具书检索
- GB/T 24202-2021光缆增强用碳素钢丝
- 阻尼复合材料课件
- 微生物农药细菌
- 新版GMP验证总计划
- 思想道德与法治课件:第五章 第二节 吸收借鉴优秀道德成果
- 文化IP市场分析报告
- [甘肃]最新甘肃省造价文件汇编(310页)
- CloudEngine S系列园区交换机-POC测试方案
评论
0/150
提交评论