BBS数据库系统的设计与实现-数据库系统的设计与实现_第1页
BBS数据库系统的设计与实现-数据库系统的设计与实现_第2页
BBS数据库系统的设计与实现-数据库系统的设计与实现_第3页
BBS数据库系统的设计与实现-数据库系统的设计与实现_第4页
BBS数据库系统的设计与实现-数据库系统的设计与实现_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

PAGE大连理工大学网络教育学院毕业论文(设计)模板PAGEPAGEII网络教育学院《数据库课程设计》题目:BBS数据库系统的设计与实现学习中心:辽宁省奥鹏学习中心专业:网络工程年级:2014年春季学号:141130305372学生:孙雨指导教师:PAGE14摘要在网络信息时代到来之前,主要的主流媒体是报刊,杂志,电视,广播等,人民通过这些信息交流平台了解各方面的资讯。可是更多的是接受,真正使得百姓们可以参与进来发表自己意见和看法的时代就是21世纪网络的广泛应用,在结合JAVA和SSH技术之下开发了这样一个快捷、界面友好的论坛交流系统,实现了一个功能相对齐全的论坛系统,在这里可以自由地发表自己的观点和对论坛的主题发表意见,我们还可以对网友的问题及时地解决,获取对自己有用的只是。本网站严格按照软件项目开发的流程进行开发,对于网站开发的可行性分析、需求分析、概要设计、详细设计以及对网站的测试与维护都又详细的论述和实现过程。随着计算机技术的不断发展,计算机作为知识经济时代的产物,已被广泛应用于社会各个行业和领域。随着我国改革的深入和社会主义市场经济的日趋繁荣,导致竞争日益激烈,迫使我们采取先进的计算机硬件设备以及高质量的辅助软件来管理运行,以提高效率。动态网页也是一样,人们在其上面发表个人的观点的平台,它是一个交互式的互动平台,它是用户相互交流的重要途径,用户提出的要求、意见、看法,可以得到及时的回复和解决,可以有效的解决用户的需要,目前计算机网络这么发达,我们就很有必要去开发一个这样的软件——动态留言系统,只要有一台与外界相连的计算机,你可以不用出家门,只要系统留言就可以和广大的用户进行交流,沟通。一、系统概述1.1总体概述随着Internet技术的不断发展,以及用户群爆炸性的增长,网络不再仅仅是信息的被动获取来源,更成为人们探讨问题,交换观点的场所,其中,网络上论坛扮演了极其重要的角色。论坛又名BBS,全称为BulletinBoardSystem或者BulletinBoardService。它是Internet上的一种电子信息服务系统。它提供一块公共电子白板,每个用户都可以在上面写书,可以发布信息或提出看法,它是一种交互性强、内容丰富而及时的电子信息服务系统。用户在BBS站点上可以获得各种信息服务、发布信息、进行讨论、聊天等等。像日常生活中的黑板报一样,论坛按不同的主题分为许多板块,版面的设计依据大多数拥护的要求和喜好,用户可以阅读别人关于某个主题的看法,也可以将自己的想法毫无保留地粘贴到论坛中。随着计算机网络技术的不断发展,BBS论坛的功能越来越强大,论坛站点中积存了丰富的信息资源,不但又各种技术资源和新闻文档,还包含着用户的判断和评论,论坛站点已成为Web信息库的重要完成部分,自网上论坛诞生几十年以来,随着Web技术的发展,已经由原来简单的电子公告板系发展为功能丰富的网上论坛和虚拟社区模式。各种论坛随着网络迅速发展,几乎充实这生活工作的每一个方面,无论是商界、政界,还是娱乐界,都有各种论坛。互联网正在融入我们的生活,网络提供给我们的不只是一个获取信息的来源,而且还是一个可以互相交流的空间,网络论坛正是一个供人们进行交流的网络空间,影响和改变着我们的生活。目前BBS的主要功能有以下几点:供用户自我选择阅读若干感兴趣的专业组和讨论组内的信息。可随意检查是否有新消息发布并选择阅读。用户可在站点内发布信息或文章供他人查阅。用户可就站点内其他人的信息或文章进行阅读。同一站点内的用户互通电子邮件,设定好友名单1.2开发背景1978年在美国芝加哥开发出一套基于8080芯片的CBBS/Chicago,此乃最早的一套BBS系统。之后随着苹果机的问世,开发出基于苹果机的BulletinBoardSystem和大众信息系统2种BBS系统。1981年IBM个人计算机诞生时,并没有自己的BBS系统,直到1982年,BussLane才用Basic语言为IBM个人计算机编写了一个原型程序。其后经过几番增修,终于在1983年通过CapitalPCUserGroup的CommunicationSpecialInterestGroup会员的努力,改写出了个人计算机系统的BBS。经ThomasMach整理后,终于完成了个人计算机的第1版系统——RBBS-PC。这套BBS系统的最大特色是其源程序全部公开,有利于日后的整改和维护,因此后来在开发其他的BBS系统时都以此为框架,所以RBBS-PC赢得了BBS鼻祖的美称。大约是从1991年开始,国内开始了第一个BBS站,经过长时间的发展,直到1995年,随着计算机及其外设的大幅降价,BBS才逐渐被人们所认识。1996年更是以惊人的速度发展起来。国美的BBS站,按其性质划分,可以分为2中:一种是商业BBS站,如新华龙讯网;另一种是业余BBS站,如天堂资源站。由于使用商业BBS站要缴纳一笔费用,而商业站所能提供的服务与业余相比,并没有什么优势,所以其用户量不多。多数业余BBS站的站长,基于个人关系,每天都互相交互电子邮件,渐渐地形成了一个全国性的电子邮件网络ChinaFidoNet。于是各地的用户都可以通过本地的业余BBS站与远地异地的朋友互通信息。这样跨领域电子邮件交流正是商业站无法与业余站相抗衡的根本因素,由于BBS站拥有这种优势,所以使用者都更乐意加入,这里“业余”2字,并不是代表这种类型的BBS站的服务和技术水平是业余的,而是指这类BBS站的性质,一般BBS站都是由自愿者开发的。他们付出的不仅是金钱,更多的是精力。其目的是为了推动中国计算机网络的健康发展,提高广大计算机用户的应用水平。国内的BBS站,大多数还是大型综合性BBS站。随着计算机的普及,特别是宽带的普及,BBS的活动将会进一步高涨,但是,随之而来对专注于领域方面的BBS将会慢慢增加需求。尽管BBS站台的数量不断增长,但BBS发展过程,也出现了一些问题。由于国内使用BBS架站软件,都是从国外引进的,因此没有必要的中文说明。虽然一些热心的站长翻译了一些资料,但是仅靠这些是远远不够的。另外,有些站台的设立是相互抄袭,所以结构上难免有雷同之处。1.3开发目的为了做成交互式的网页,方面客户端和浏览端之间的交流。通过论坛,人们能够相互交流沟通,把疑惑在论坛里发布,大家献计献策,共同学习,共同进步。二、系统需求分析2.1总体需求分析:1)用户注册和登录,后台数据库需要存放用户的注册信息和在线状态信息;2)用户发贴,后台数据库需要存放贴子相关信息,发帖和回帖,如贴子内容、标题等;3)论坛版块管理:后台数据库需要存放各个版块信息,如版主、版块名称、贴子数等;2.2实体及属性:回贴

回复编号回贴

回复编号

回复主贴编号

回复版编号

发帖人编号

回贴时间

回帖内容主贴

贴子编号

内容

作者

点击时间

主体

提问

论坛名字论坛用户

姓名

密码

邮箱

性别

等级

用户个人说明

注册日期版块

版块编号

版块名称

版主编号

板块创建时间2.3实体间的关系:1)回贴和主贴有主从关系:我们需要在回贴实体中表明它是谁的回贴;2)版块和用户有关系:从用户实体中可以根据版块对象查出对应的版主用户的情况;3)主贴和版块有主从关系:需要表明发贴是属于哪个版块的;4)主贴和用户有主从关系:需要表明主贴是由哪个用户发表的;5)回贴和用户有主从关系:需要表明回贴是由哪个用户发表的;2.4开发语言选用:本系统所用的是JAVA语言,它的特点有:分布式Java建立在扩展TCP/IP网络平台上,库函数提供了用HTTP和FTP协议传送和接受信息的方法,使得程序员使用网络上的文件和使用本机文件一样容易。安全性Java的变成类似C++,学习过C++的读者将很快掌握Java的精髓。Java舍弃了C++的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理,防止程序的非法访问。面向对象Java吸取了C++面向对象的概念,将数据封装与类中,使用类的有点,实现了程序的简洁性和便于维护性。累的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复使用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在JAVA中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类又有一个父类。JAVA提供的Object类及其子类的继承关系如同一颗倒立的树形,根类Object类,Object类功能强大,经常会使用到其他派生的子类。4.健壮性JAVA致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早起出现的错误。Java自己操纵内存减少了内存出错的可能性。JAVA还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发java应用程序的周期。并且java还提供了null指针检测。数组边界检测、异常出口、Bytecode校验等功能。平台无关性平台无关性是指java能运行于不同的平台。Java引进虚拟机原理,并且运行于虚拟机,实现不同平台的java接口之间。使用java编写的程序能在世界范围内共享。Java的数据类型与机器无关,java虚拟机是建立在硬件和操作系统之上,实现java二进制代码的解释执行功能,提供于不同平台的接口的。2.1.2MySQL数据库的选用:MySQL是一个小型关系型数据库管理系统,其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,故企业为降低网站成本选用该数据库,具体特性如下:1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性2.支持AIX/FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Windows等多种操作系统。3.为多种编程语言提供了API.这些编程语言包括C、C++、Java、PHP等。4.支持多线程,充分利用CPU资源。5.优化SQL查询算法,有效的提高查询速度。6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他软件中提供多语言支持,常见的编码如中文的GB2312、BIG5、日文的Shift_JIS等都可以用作数据表名和数据列名7.提供TCP/IP、ODBC和JDBC等多种数据库操作的管理工具8.提供用于管理、检查、优化数据库操作的管理工具9.可以处理拥有上千万条记录的大型数据库此外,该系统还使用了SSH框架,这些成熟的技术条件为该系统的建立提供了基础。2.3系统的开发运行环境:开发语言:Java数据库:MySQL开发工具:MyEclipse8.0预期效果:一个可扩展的基于MVC模式的BBS论坛2.4数据流程图的建立:数据流程图是对数据和对数据的加工两方面来表达数据处理系统工资过程的一种图形表示方法,具有直观,易于被用户和软件人员双方理解的一种表达系统功能的描述方式。图2-1BBS论坛主体管理员操作板块,即后台管理板块主要是:图2-2操作员界面主体版主有课访问界面,即系统前台模块主要流程图:图2-3前台模块主体概念结构设计3.1概念结构设计概述概念结构设计就是将用户需求抽象为概念模型的过程,它以用户易于理解的形式表达信息,这种表达与数据库的具体细节无关,它所设计的数据独立于具体的DBMS和计算机硬件,概念模型是实现世界到机器时间的一个中间层次。概念模型的主要特点如下所示:1.能够真是充分的反应显示世界忠事务与事务之间的联系,有丰富的语义表达能力,能满足用户对数据的各种处理要求。2.易于理解和交流,便于数据库设计人员和用户之间的沟通和交流。3.易于改进,应用环境和应用需求改变时,容易对概念模型修改和扩充。4.易于想关系,网状,层次等各种数据模型转换。3.2基于E-R(实体-联系)模型的概念结构设计:E-R图提供了实体型、属性和联系的方法:实体:指客观存在且相互区别的东西;属性:实体的每一个特性;联系:现实世界中事务间的关系。有一对一,一对多和多对多的联系。该系统的E-R图如下所示:用户E-R图:主贴E-R图:板块E-R图:回帖E-R图:实体总图E-R图如下所示:3.3逻辑设计逻辑设计是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,通常包括数据项、数据结构、数据流、数据存储和处理过程五部分,它通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。BBS用户信息表:3-3-1主贴信息表列表名数据类型可否为空说明UnamecharNotnull姓名UpasswordcharNotnull密码UemailcharNotnull邮箱UsexbitNotnull性别UgradeVarcharDefaultnull等级UstatementVarcharNotnull用户个人说明URegdatedatetimeNotnull注册日期QQVarcharNotnull用户QQlxdzVarchar用户博客realnameVarchar用户真实名URegdatedatetimeNotnull用户注册日期3-3-2附件列表名数据类型可否为空说明TIDIntNotnull帖子编号ContentIntNotnull内容AuthorIntNotnull作者SubmittimeIntNotnull点击时间TitleVarchar(300)Notnull主题xqVarchar(30)Notnull提问forunameVarchar(20)论坛名字3-3-3板块信息表列表名数据类型可否为空说明SIDIntNotnull板块编号SNameCharNotnull板块名称ManagerIDIntNotnull版主编号CreatetimeIntNotnull板块创建时间3-3-4回帖信息表列表名数据类型可否为空说明RIdIntNotnull回复编号RTidIntNotnull回复主贴编号RSidIntNotnull回复版编号RUidVarcharNotnull发帖人编号RtimeDatetimeNotnull回帖时间RcontentVarcharNotnull回帖内容3.4程序设计:3.4.1创建数据库:createdatabasedb_bbs;use_db_bbs;3.4.2创建用户表:createtabletb_user(Idint(11)auto_incrementprimarykeynotnull,usernamevarchar(20)notnull,passwordvarchar(20)notnull,sexvarchar(2)notnull,emailvarchar(50)notnull,oicqvarchat(20)defaultnull,signaturevarchar(300)defaultnull,gradevarchar(20)defaultnull,lxdzvarchar(50),txvarchar(30),grzyvarchar(50),realnamevarchar(30));3.4.3创建论坛板块表:createtabletb_form(idint(11)auto_incrementprimarykeynotnull,forumnamevarchar(20)notnull,managervarchar(100)defaultnull,createtimetimestampdefaultcurrent_timestamp);Insertintotb_forum(forumname,manager)values(‘ASP’,‘fish);Insertintotb_forum(forumname,manager)values(‘PHP’,‘fish);Insertintotb_forum(forumname,manager)values(‘C#’,‘fish);Insertintotb_forum(forumname,manager)values(‘JSP’,‘fish);Insertintotb_forum(forumname,manager)values(‘VB’,‘fish);3.4.4创建主贴表:Createtabletb_topic(idint(4)auto_incrementprimarykeynotnull,contenttext,authorvarchar(20)notnull,submittimetimestamp(8)defaultcurrent_timestamp,forumidint(4)default0,titlevarchar(30)notnull,rqint(4)default0,forumnamevarchar(20));3.4.5创建回帖表:createtabletb_response(idint(11)notnullauto_incrementprimarykey,titlevarchar(300)notnull,contenttext,authorvarchar(20)notnull,submittimetimestampdefaultcurrent_timestamp,topicidint(4)notnull,topicnamevarchar(100),xqvarchar(20)notnull);3.4.6环境配置好后,启动服务器,在浏览器的地址栏中输入程序的访问路径,如:“http://localhose:8080/bbs”,就可以访问网站内容。首先单击“注

温馨提示

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

评论

0/150

提交评论