网上论坛系统

上传人:猪** 文档编号:242985005 上传时间:2024-09-13 格式:PPT 页数:36 大小:1.35MB
返回 下载 相关 举报
网上论坛系统_第1页
第1页 / 共36页
网上论坛系统_第2页
第2页 / 共36页
网上论坛系统_第3页
第3页 / 共36页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,网上论坛系统实践指南,1,导读,介绍网上论坛系统的立项、需求、设计和编程实现,重点是,J2EE,下的系统整体架构设计、数据库设计、,JDBC,数据库连接中间件的连接方法、用户注册登录功能和版块管理功能的编程实现源代码。,根据文献1的文档制作标准,本章还给出了详细而标准的需求分析文档和系统设计文档。,本章的重要性与先进性在于:网上论坛系统是在当今最先进的,J2EE,平台下设计的,程序是用,Java,实现的,核心源码以文字的方式提供,全部源码在附带的光盘上给出。,作为学生实习的项目,网上论坛系统的规模(或工作量)不大不小,既非常合适,又极具新意,希望将学生划分为多个项目组,每组3-5人,确定1名项目经理,按照需求、设计、美工、编程、测试进行分工,组员之间既分工又协作,一边上课,一边看书,一边模仿着做项目,用1-2个月完成这项任务。验收内容包括需求文档、设计文档、源代码、可执行程序、测试文档、用户指南。,2,本章对读者的要求,要,求,具,体,内,容,了,解,1,),网上论坛系统立项背景,2)网上论坛系统目录结构,3),网上论坛,系统部署,理,解,1,),网上论坛,系统,开发环境和运行环境,2)网上论坛,系统,需求分析文档,3)网上论坛,系统,设计文档,关 注,1,),论坛系统整体架构设计和网上论坛系统数据库设计,2,),网上论坛系统数据库连接实现,3)网上论坛系统用户注册登录功能实现,4)网上论坛系统版块管理子系统实现,3,系统立项背景,论坛又叫,BBS,,全称为,Bulletin Board System,,中文意思是“电子公告板”,它是,Internet,上的一种交互性极强的、网友喜闻乐见的电子信息服务系统,提供一块公共电子白板,每个用户都可以在上面书写,发布各自的信息或提出不同的看法,以便与其它用户进行交流讨论。,J2EE,技术具有许多显著的优点,所以我们采用,J2EE,平台来开发。近两年来也开始流行起新的网络编程脚本语言,ASP.NET。ASP.NET,和,JSP,同样是属于编译型的,即在第一次运行,WEB,应用时将代码编译,以后重新运行就不再进行编译了,除非代码发生改变。,冰鱼论坛管理系统采用了,J2EE,设计模式中的,MVCModel 2,模式,采用,MySQL,做数据库服务器。由于前面的章节已详细讲解了需求分析、数据库设计等方面,本章对冰鱼论坛管理系统的讨论,重点放在,J2EE,系统架构设计及具体实现上,而对需求分析及系统测试不作详细介绍。,4,系统需求分析,需求分析就是对顾客的需求进行定义或确定,这一过程十分重要,而且有许多工作看似容易,做起来很难。因为客户的需求具有动态性,甚至有个别用户朝三暮四地变化;同时客户的需求具有模糊性,有些客户对业务流程表达不规范,对需求表达不清楚不明确,甚至自己都不清楚真正的需求是什么。所以唯一不变的是变化!,论坛具有的最基本模块有:,(1) 用户模块主要包括用户登录、注册、用户资料修改等;,(2) 版块模块主要实现对论坛版块的管理,如增删改等;,(3) 帖子模块主要实现显示帖子内容,斑竹或管理员能进行相应管理;,(4) 友情链接主要用于其他站长申请友情链接;,(5) 广告模块主要用于论坛放置广告,并进行相应管理。,5,系统需求分析,尽管需求分析过程的工作很多,但最主要的是完成以下8项任务:,第1项任务:画出冰鱼论坛管理系统的组织结构图,由于论坛的组织结构是以角色的组成为结构的,因此列出角色结构就可以了。画出了组织结构图,就可以了解到论坛的角色组成,为往后的权限分配和开发各个功能模块奠定了基础。,第2项任务:画出冰鱼论坛管理系统的业务操作流程图,即业务操作模型,重点是业务操作的流水步骤。,第3项任务:列出论坛系统的功能点列表,即功能模型。,第4项任务:列出论坛系统的性能点列表,即性能模型。,第5项任务:列出系统的接口列表,即接口模型。由于冰鱼论坛管理系统不需要与其它系统或设备进行交互、连接等,因此此项需求任务在该论坛系统中略去。,第6项任务:确定冰鱼论坛管理系统的运行环境,即环境模型。,第7项任务:约定冰鱼论坛管理系统的界面,即界面模型。,第8项任务:对冰鱼论坛管理系统的开发工期、费用、开发进度、系统风险等问题进行分析与评估。,6,需求规格说明书(,Requirements Specification),1概述(,Summary),1.1 用户简介(,User Synopsis),现实生活中的交流存在时间和空间上的局限性,交流人群范围的狭小,以及间断的交流,不能保证信息的准确性和可取性。因此,用户需要通过网上论坛的交流扩大交流面,同时可以从多方面获得自己的及时需求。本系统面向所有乐于参与交流活动的广大网友,用户角色大致分为三类:普通用户、管理员、斑竹(也称为版主,以下均称为斑竹)。,1.2 项目目的和目标(,Purpose and Aim of Project),信息时代迫切要求信息传播速度加快,局部范围的信息交流只会减缓前进的步伐。本系统的目的在于为分散于五湖四海的人提供一个共同交流、学习、倾吐心声的平台,实现来自不同地方用户的极强的信息互动性,用户在获得自己所需要的信息的同时也可以广交朋友,拓宽自己的视野和扩大自己的社交面。,1.3 术语定义(,Terms Glossary),IceFish,BBS:,冰鱼论坛的英文名称。,7,需求规格说明书(,Requirements Specification),1.4 参考资料(,References),实用软件工程第二版, 赵池龙等 编著,电子工业出版社,2006年9月,1.5 相关文档(,Related Documents),【1】IceFish BBS,项目开发计划书,【2】,IceFish,BBS,概要设计说明书,【3】,IceFish,BBS,详细设计说明书。,1.6版本更新信息(,Version Updated Record),2.目标系统描述(,System in Target),2.1,组织结构与职责(,Organizing Framework and Function),本系统用户的组织结构图如图4-3所示。,2.2角色定义(,Role Definition),用户在系统中扮演的角色,以及可以执行的职责,如表4-3所示。,2.3作业流程(业务模型)(,Busywork Flow)(Operation Model),系统总体业务流程图,如图4-8所示。对于每一个小的业务流程图,需要单独画出,为了节省篇幅,在此不再介绍。,2.4 信息源(,Bill of Document),本系统的主要信息源说明,如表4-4至表4-9所示。,8,3.目标系统功能需求(,Function of Target System),9,4. 目标系统性能需求(,Performance of Target System),4.1 时间需求(,Time Request),(1),查询的最长等待时间不超过5秒;,(2)更新信息的时间不超过3秒;,(3)数据的上传和下载的时间不超过10秒。,4.2 空间需求(,Space Request),(1),支持的终端数:=1000;,(2)支持的并行操作的使用者数:=300;,(3)处理的记录数:1000。,10,5. 目标系统界面与接口需求(,Interface of Target System),图4-5 论坛首页,11,图4-6 后台管理界面,12,开发环境和运行环境,目前的,J2EE,应用开发环境分为两大类:基于命令行的开发环境和集成开发环境。基于命令行的开发环境利用简单的文本编辑工具写程序代码,并使用,Java,命令进行编译、发布、运行。常见的集成开发环境有,Borland,公司的,JBuilder、IBM,公司的,WSAD、SUN,公司的,SUNone,Studio,等,但这些集成开发环境价格昂贵,且运行时对硬件配置要求较高。,我们使用开源的免费集成开发环境,Eclipse,,来开发冰鱼论坛管理系统。冰鱼论坛管理系统的测试、部署和运行,还需要一个,WEB,服务器的支持,这里选择使用开源免费的,Tomcat。,另外,还采用免费的,MySQL,作为数据库服务器。,系统环境配置如下:,JDK1.5+Eclipse3.1+Tomcat5.5.15+MySQL5.1。,其中的,JDK1.5,可以从,Sun,官方网(,),下载,它是一切,Java,应用程序的基础。,Eclipse3.1,可以到,http:/www.eclipse.org,下载,,Tomcat5.5.15,可以到,http:/tomcat.apache.org,下载,,MySQL5.1,可以到,http:/,下载。当然,以上介绍的版本可能已经不是最新版本,读者可以从它们的官方网站选择下载最新版本。,安装过程:首先安装,JDK,,可以选择目标安装位置,其它的步骤可以按默认选项进行安装;接着安装,Tomcat,和,MySQL,,,可以都按照默认选项进行安装;最后是,Eclipse,,直接从官方网站下载的压缩包解压就行了,第一次运行时会自动找出系统中适合,Eclipse,运行的,Java,环境。,13,整体架构设计,Java,是一门纯面向对象的编程语言,用来编写各种应用程序。,与,Java,不同的是,,J2EE,是一种体系结构,而不是一门编程语言。,J2EE,是一个标准中间件体系结构,旨在简化和规范分布式多层企业应用系统的开发和部署。,如图4-7为,J2EE,多层体系结构,包括了客户层、表示层、业务逻辑层和企业信息系统层。,J2EE,体系结构的实施显著地提高了企业应用系统的可移植性、安全性、可伸缩性、负载平衡和可重用性。,14,J2EE,多层体系结构,J2EE,架构开发应用系统主要有两种类型:,Model1,和,Model2。,Model1,为三层体系结构,以,JSP,为中心进行开发,在,JSP,页面中同时实现显示、业务逻辑和流程控制。这种开发模式便于掌握且开发快速,然而从软件工程化的角度来看,它存在着一些不足之处:(1)由一组,JSP,页面实现一个业务流程,在进行改动时要同时改进多个地方,不便于应用扩展和升级;(2)业务逻辑和表示逻辑混合在,JSP,页面中,不利于应用系统业务的重用和改动;(3)对于大型应用程序,随着后期开发,,JSP,会变得臃肿笨重,应用系统的可维护性会严重恶化。,Model2,是基于,MVC(Model-View-Control),模式的框架,很好地将业务逻辑和表示逻辑分离出来。,MVC,架构具有以下优点:(1)多视图使用同一模型,及时地得到模型数据变化,从而使所有相关联的视图和控制器做到同步;(2),MVC,三个层各施其职,互不干扰,并且有利于开发的分工;(3)容易支持新类型的客户端,只需写一个新的视图和控制,就可连接到现存的业务模型中。,15,J2EE,多层体系结构,本章的冰鱼论坛管理系统案例,将采用,Model2,的,MVC,架构来实现。现在,根据前面的需求分析,设计出论坛系统的总体结构图,如图4-8所示。,冰鱼论坛管理系统由五个子系统构成,并且除了注册登录功能模块有所不同,其它子系统或功能块的处理与实现都是相似的增删改查功能。因此,这里将仔细讨论用户注册登录和版块管理的功能。对于帖子管理、友情管理等子系统将在这里略去,读者可以参考附件光盘上的源代码。,然后,根据需求分析文档,设计出注册登录系统的整体体系结构和版块管理子系统的整体体系结构,它们均分为四层:表示逻辑层、控制逻辑层、数据表示层、数据持久层。,由图4-10可知版块管理子系统用,MVC,模式设计出来的流程如下:管理员在,View,层(视图层),JSP,页面中输入版块相关信息后,由,Control,层(控制层)中的,BoardServlet,利用,request,获取,JSP,页面中表单的版块相关信息以及判断,action,的行为(增删改查),然后再传递给,Model,层(模型层)的,BoardBean,进行版块信息的封装,接着,BoardServlet,再调用模型层中已封装了所有,SQL,语句,BoardDataBean,中相应的方法对数据库进行相应的操作。,由以上流程可以看出,,MVC,设计模式的一个明显优点是,三个层次各司其职,互不干扰。,16,J2EE,多层体系结构,View,层(,JSP,页面)负责在界面上表现,它是通过,Model(,模型)访问企业数据并指定这些数据的显示。,Control,层(,Servlet,),负责处理与视图的交互转化成模型执行的动作,用户可以通过按钮或菜单等,来提交在,Web,应用中,GET,和,POST HTTP,请求。,Model,层(,JavaBean,),负责实现业务逻辑的封装,很好的分离了后台业务逻辑和前台表示逻辑,提高了程序的可维护性。,另外,,MVC,模式也有利于软件开发中的分工,对于擅长于网页设计界面的美工,可以负责,View,层,而不必熟悉,Java;,熟悉,Java,的程序员主要负责,Control,层和业务逻辑层。这样的分工合作,达到开发资源的最优配置,充分发挥每个人的专长,.,17,数据库设计,冰鱼论坛系统通过数据库连接中间件,JDBC,,来访问数据库。,几乎在所有的,Web,应用程序中,都要访问存储在数据库中的信息,,J2EE,提供了一个标准接口,JDBC,来进行数据库的访问操作。,要利用,JDBC,访问数据库,首先必须在机器上安装一个数据库管理系统,并将数据库的,JDBC,驱动程序添加到,J2EE,应用服务器的,Java,编译器路径中。,冰鱼论坛管理系统采用的是,MySQL,数据库管理系统,因此还需要,MySQL,的驱动程序,该论坛系统所用的驱动程序为:,mysql-connector-java-3.1.12-bin.jar,,你可以从网站,http:/,下载而得到它。再将该驱动程序拷贝到,Tomcat_Home(Tomcat,的安装目录)下的,commonlib,子目录下即可。由于,MySQL,并没有提供界面操作,对于许多人来说,靠输入,SQL,命令来访问数据库,显得十分不方便。为此,可以安装数据管理工具,MySQL,-front,,或者,ysql,官方提供的,MySQL,Query Browser,工具,这些工具的特点就是可视化,所有操作完全界面化,使,MySQL,管理变得较为简单。,这里应当注意的是,数据库管理本身并不是一件容易的事情,只能通过可视化界面管理,让操作简单方便而已。,18,数据库设计,设计好系统数据库后,便可以通过使用,MySQL,-font,管理工具,来创建冰鱼论坛的数据库。步骤如下:,(1)启动,MySQL5.1,数据库服务器:,首先,打开【开始】菜单选择【运行】,在弹出的运行窗口中输入“,services.msc,/s”,,如图4-11所示,点击【确定】按钮即打开系统服务。再在【服务】窗口中找到,MySQL,选项(如图4-12),点击【启动】即可启动,MySQL,服务。,(2)创建冰鱼论坛数据库:,接着打开数据库管理工具,MySQL,-Front,,如图4-13所示,点击窗口中的【,SQL,编辑器】,把冰鱼论坛管理系统的,SQL,脚本复制进来,然后执行,SQL,脚本,系统的数据库就创建完成了。,19,数据库设计,窗口,20,概要设计说明书(,Architectural Design Specification),图4-15 用户登录系统时序图,21,图4-16 添加版块时序图,22,图4-17 数据表关系,CDM,图,23,系统目录结构,24,数据库连接实现,冰鱼论坛管理系统经常要访问存储在数据库中的信息,几乎所有的功能操作都需要实现对数据库的访问操作,因此首先要建立与数据库的连接。,从达到代码重用的角度出发,该系统实现了公用的数据库连接类,以备在系统的其它,Java,程序中直接调用。,Conn.java,连接完整的代码如程序4-2所示.,25,用户注册登录功能实现,首先实现用户注册功能,该功能利用,MVC,设计模式实现。其中的,View(,视图层)由三个,jsp,页面组成,分别为,reg.jsp、adduser.jsp、regsuccess.jsp,。,其中的,reg.jsp,文件显示了论坛注册协议,只有同意该协议才能进入下一步的注册页面,adduser.jsp,。,用户信息注册页面,adduser.jsp,主要由一个表单,form,组成,该表单,form,利用了,post,请求方法,将用户信息传递给,Control(,控制层)中的,Servlet,。,如果用户注册成功,则转向,regsuccess.jsp,页面文件,并提示注册成功。如果用户注册失败,依然转向,regsuccess.jsp,页面,不过在该页面上提示的是注册失败的原因。,完整的,View,层代码,如程序4-3、程序4-4、程序4-5所示.,26,版块管理子系统实现,该子系统实现冰鱼论坛系统的后台对版块的增删改管理。,View,层中关于增删改的操作主要由,admin_addboard.jsp、admin_editboard.jsp,和,admin_delboard.jsp,页面组成。,Control,层主要由,BoardServlet,实现,,Model,层主要由,BoardBean,和,BoardDataBean,实现。,由于前面的用户注册登录功能已经详细讲解了,MVC,模式的实现方法,这里就不再重复讲解,只给出程序代码让读者自行理解。,首先,我们实现了一个用来查询数据库中所有结果的,IndexBean.java,文件,该,java,文件可用于查询所有版块、用户或帖子等数据信息,完整代码如程序4-15所示。,27,系统部署,完成整个冰鱼论坛管理系统的代码实现,接着就要利用,Eclipse,将所有的,java,文件编译成,class,文件才能部署,Web,应用。将编译后的,class,文件分类放置在,WEB-INF/classes,目录下。,冰鱼论坛管理系统所有文件都存放在,icefish,文件夹中,将,icefish,文件夹移至,Tomcat,的,webapps,目录下。启动,MySQL,服务,接着启动,Tomcat,,再启动,IE,浏览器,在地址栏中输入“,http:/127.0.0.1:8080/icefish/index.jsp”,,首页如图4-19所示。,28,图4-19 冰鱼论坛管理系统首页,29,图4-20 注册协议界面,30,图4-21 用户注册界面,31,图4-22 用户登录界面,32,图4-23 后台版块管理界面,33,图4-24 添加版块界面,34,图4-25 删除版块界面,35,本章小结,J2EE,多层体系结构较完善地解决了分布式应用系统的架构问题,显著地提高了企业级应用系统的可移植性、可伸缩性、负载平衡和可重用性等。,通过对本章的冰鱼论坛管理系统案例的分析,加深了对,J2EE,多层体系结构的理解,掌握了如何利用,J2EE,平台开发企业级应用系统。,本章从面向对象的软件开发过程,到,J2EE,应用系统的,MVC,架构设计、,J2EE,开发环境和运行环境的搭建、,J2EE,应用系统的部署,都详细地作了解释。,由于篇幅有限,冰鱼论坛管理系统只向读者显示了最核心部分的实现。但是可以举一反三,实现其它功能,并对论坛系统进行功能扩展。关于冰鱼论坛管理系统更详细的源程序、界面、运行情况等资料,可以参考本书附带的光盘。,36,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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