信息发布内容管理系统毕业论文.doc_第1页
信息发布内容管理系统毕业论文.doc_第2页
信息发布内容管理系统毕业论文.doc_第3页
信息发布内容管理系统毕业论文.doc_第4页
信息发布内容管理系统毕业论文.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

青岛理工大学毕业论文(设计)信息发布内容管理系统毕业论文目 录第1章 绪论11.1课题背景11.2课题内容及意义11.3 国内外研究情况21.3.1 现阶段信息发布管理系统分析21.3.2 信息发布研究情况阐述31.4 本文研究及所做工作5第2章 系统需求分析62.1 需求分析概述62.2 系统需求分析6第3章 系统开发方法及开发工具选取93.1系统开发基础93.1.1 基于Web的网络应用开发语言及技术93.1.2 ADO.NET数据库联接技术113.1.3 不经过回发而实现客户端回调技术123.2 系统结构选择143.3 开发平台选择173.4系统开发工具选取183.4.1 MS Visual Studio 2005 集成开发环境183.4.2 SQL Server数据库服务器19第4章 系统总体结构设计214.1 功能模块划分214.2 系统页面设计23第5章 数据库设计255.1 概念设计255.2 数据库的逻辑结构设计265.3 数据库表结构设计27第6章 新闻发布管理模块实现296.1业务类介绍296.2 前台展示模块实现306.2.1 文章显示模块具体实现306.3 后台管理356.3.1 文章发布模块实现356.3.2 文章管理模块实现406.3.3 评论管理模块实现426.3.4 分类管理模块实现436.4 系统调试46结论50致 谢51参考文献52III青岛理工大学毕业论文(设计)第1章 绪论1.1课题背景随着社会信息化的推进,各类企业、组织的业务活动纷纷加速向互联网渗透。企业通过互联网开展了多种业务,并且业务的种类和规模还在不断扩大之中,企业信息化快速发展的同时也存在着一些问题,国内约有相当数量的网站难以打开,一定数量的网站应用价值比较低,还有相当数量的网站存在网站建设困难、信息更新不及时、服务功能不健全、发布的信息无时效价值等现象。例如,根据需要突然想增加某个栏目,可是却需要美工人员来设计,专业人员来编码,整个过程相当的复杂;只是想修改一下栏目的名称,居然花了一天时间,甚至需要专业人员修改、维护网站,从而不得不聘请了多位网页制作人员,网站的维护成本太高;当管理外网或者内网时,栏目一个个增加,需要发布的信息越来越多时,让网站的内容保持更新成为一件棘手的事情。等等诸如此类问题的存在对网站的发展造成了制约。采用网站内容管理系统就能很好的解决上述问题,它是一个很好的管理平台和发布平台,提供直接的接口给管理或业务人员;其通过对机构中各种类型的数字资产的产生、管理、增值和再利用,增加了内容的价值,快速廉价的内容更新,提高准确度,降低信息获取的开销,为技术创新提供支持,改善组织的运行效率和提高企业的竞争能力。1.2课题内容及意义信息化的发展,可以说给企业带来了一场产业革命,企业对信息的要求更为迫切。信息的采集、处理、发布己经成为企业的基本要求,并伴随网络的发展,逐步实现文档电子化、处理电脑化。传统的Web网站建设和维护的方法是: 首先设计Web网站的框架结构,然后设计HTML页面,最后把设计好的HTML页面纳入Web网站的框架结构中。这种网站建设模式比较适合小型网站和内容相对固定(变化较少)的网站,因为对于信息量大,结构复杂的政府门户网站和政务平台来说,这种方式具有诸多弊端:框架结构维护复杂,不容易修改;页面设计的工作量大,需要大量人力投入;网页太多之后,不仅不易维护,也不易使用;容易产生死链和错误链接。基于Web的新闻管理发布模块,是将网页上的某些需要经常变动的信息,类似新产品发布和业界动态等更新信息集中管理,并通过信息的某些共性进行分类,最后系统化、标准化发布到网站上的一种网站应用程序。网站信息通过一个操作简单的界面加入数据库,然后通过已有的网页模板格式与审核流程发布到网站上。它的出现大大减轻了网站更新维护的工作量,通过网络数据库的引用,将网站的更新维护工作简化到只需录入文字和上传图片,从而使网站的更新速度大大缩短,在某些专门的网上新闻站点,如新浪的新闻中心等,新闻的更新速度已经缩短到五分钟一更新,从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持网站的活动力和影响力23。新闻管理发布模块采用的数据库技术能够有效的解决以上问题,数据库作为后台强大的内容处理引擎,为Web服务器提供信息源。系统利用动态网页生成技术,在实时交互中动态产生网页。系统包括信息采集、整理、分类、审核、发布和管理的全过程,具备完善的信息管理和发布管理功能,是企事业单位网站、内部网站和各类ICP网站内容管理和维护的理想工具。应用该系统,政府各部门可以随时方便地提交需要发布的信息而无须掌握复杂的技术。因此对新闻管理发布模块的研究和开发是极其有意义和急需马上解决的一项迫切工作。1.3 国内外研究情况1.3.1 现阶段信息发布管理系统分析信息系统在一般企事业单位中,涉及面非常广泛。不同情况下,用户的需求会有很大的差别。(1)系统规模不一样对于比较大型的企事业单位,他们需要的网站建设系统强调的是能够与他们己有的MIS、ERP等系统接口,将他们的信息发布在局域网、广域网甚至移动通信网。在使用过程中,用户对信息的多样性、保存格式、发布方式以及操作环境都有各种不同的要求。这类用户强调的是在大的系统构架下子系统的正常协作。对于较小的企业事业,相比之下他们需要的是一个简单的信息处理系统,能够对文档等信息进行管理并及时发布的系统都能够满足要求。他们需要的是一个操作简单、维护方便的系统。如果能够有一个信息发布平台,只需比较低廉的费用就可以使用,将会非常满足该类用户的要求。这样,将不存在任何维护费用,就可以获得同样的服务。(2)系统信息处理不一样不同的企事业单位对信息系统处理的要求也不一样。有的企业比较注重数据的采集,如钢铁企业需要对炉膛的温度进行监视,并通过硬件系统进行控制,这个过程目前己经自动化了。但相关的数据是需要信息系统保留下来的,也就是说,信息系统要能够采集这种数据流。大部分情况下,对文本信息的管理比较多,不论是多么现代化的企业还是相比之下较为落后的单位,文档信息的统一管理是一个非常重要的工作。很多企业的文档是保留在纸上,也有一些是保存在计算机里面但文件格式各不相同。信息系统必须要有这种转换不同格式的文本数据使其统一的功能。通过以上分析可以得出,不管是比较大型的企事业单位,还是较小的企业公司都需要一个信息发布管理的平台,这对于提高企业运行效率,进一步完善企业的功能都是相当有益的。1.3.2 信息发布研究情况阐述(1)传统的静态信息发布传统的静态信息发布,信息的组织、管理基于文件系统,基于HTML的文档,站点工作人员手工书写网页,手工维护文档间的关系。具有性能好、对硬件平台要求低等优点。但是,在这种方式下信息的发布、网站的管理都要求有内容提供人员、网页设计人员、编程人员协同工作,信息发布效率低下,站点结构难以更改;一旦站点结构做了改变,相应的程序就得修改,同时,己发布的信息页面必须手工修改;这种信息发布方式出现较早,目前应用得也比较少,应用群体主要为个人站点和小型站点。 (2)基于模版的静态信息发布这种方案是传统静态网站的一个扩展,就是把文档内容存储和管理基于数据库系统。根据数据库中内容生成静态页面。当Web服务器接到浏览器请求后,将静态页面返回给用户。具有站点内容易于管理、维护,站点改版比较容易和对发布服务器硬件要求相对较低等优点。目前,采用这种发布方案的用户多为大型的新闻网站或浏览量超大的ICP,如网易、新浪、搜狐等大型门户网站。信息可以进行组织管理,不算是全面的网站系统,可以称为高级文件系统。(3)基于模版的动态信息发布文档内容存储和管理基于数据库系统。站点管理维护人员只更新数据库中数据,当Web服务器接到浏览器请求后,执行CGI或ISAPI程序(如Perl, ASP,PHP,JSP等),根据程序调用的模版和数据库中内容,动态生成HTML页面。这种模式下的站点内容易于管理和维护,站点改版工作量小,实时性强。由于数据库访问的开销远高于文件访问,所以对系统硬件平台有一个较高的要求,而且当站点访问量很大时,需要通过其他技术解决连接问题,如集群等。需要数据库服务器的支持,不利于租用空间的中、小型用户使用。目前使用该类型发布方案的站点最多,几乎所有的商业应用都需要动态网站的支持。但是它或者扩展能力有限或者扩展程序无法无缝挂接,离网站建设系统还有一段距离,只能称为普通动态信息发布系统。1.4 本文研究及所做工作本文以信息发布系统的分析设计为基础,按照面向对象的软件开发的思想,从需求分析、技术实施、设计、编码方面对新闻发布管理模块进行了详细的介绍,并应用ASP.NET技术对新闻发布管理模块进行了实现。本课题主要内容如下:(1)研究开发新闻管理模块采用技术和方案如何去实现系统的功能,采用什么技术达到系统的先进性和稳定性,通过综合分析给出一个具体可行的方案。(2)需求分析和功能设计通过对网站建设和管理的深入调研和分析,确定了最终用户的需求,并结合所学知识和指导老师指导在此基础上进行了需求分析和功能设计。(3)根据需求分析和技术选择,对新闻发布管理模块进行功能实现。(4)模块实现关键技术难点,并给出具体的解决方法。55青岛理工大学毕业论文(设计)第2章 系统需求分析2.1 需求分析概述内容管理系统新闻管理发布模块是参照国内外相关技术的发展状况,根据我国中小企业的详细需求进行设计开发。本设计适合目前国内中小企业的用户需求,真正实现了对于网站新闻管理发布的傻瓜式的应用,能大幅度的提高网站更新维护的效率。本章主要介绍系统的需求分析。2.2 系统需求分析需求的定义包括从用户角度(系统的外部行为)和开发者角度(一些内部特性)来阐述需求。需求是指明必须实现什么的规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束。本系统的用户可以是一家网站或企事业单位,需要经常在网络上发布一些信息,他们需要的信息系统应该具有一般新闻系统的功能,同时具有信息审核的功能。通过对其他一些新闻系统的调查,我们发现,一般新闻系统功能如下: (1)前台按分类显示新闻(2)搜索新闻(3)后台管理:添加、删除和修改新闻添加、删除用户添加、删除和修改分类既然需要新闻审核,就说明添加后的新闻分为两种:直接发布新闻和待审新闻,同时待审新闻通过管理员审核可以成为发布新闻,可以进入后台发布新闻的有内容提供者、编辑和管理员,所以针对不同的角色要实现不同界面展示,所以我们认为这个系统的主要功能为:(1)前台按分类显示发布信息(2)发布信息管理(包括删除、修改信息)(3)审核信息管理(包括删除、修改信息)(4)添加发布信息(添加成功后的信息根据管理员权限分为发布信息和审核信息)(5)分类管理(添加、删除和修改分类)以上的初步需求分析,经过不断的修改和进一步的分析,又产生了新的需求,对于文章,单纯的文字文章在目前的网页浏览中已不占有优势,浏览用户更希望看到图文并茂的网页展示,因此需要能够在添加文章的同时,可以添加相应的图片。对于浏览用户感兴趣的文章可以添加自己的评论。对于前台文章显示,希望有一个显示最热新闻文章的部分。主页文章分类显示的部分,由于文章分类的不定性,如果全部显示那么将影响主页的布局及美观,所以可以由用户选择用于主页显示的文章类别。对于后台管理部分,有时为了简化新闻发布的流程,可以由系统管理员选择开启、关闭文章审核的流程。最终系统需求如下:(1)前台文章显示显示文章分类根据分类进行文章显示文章详细内容的展示用户评论的添加及查看显示网站最热的5篇文章主页动态的显示4个文章分类及该类别下最新发表的文章信息(2)后台管理添加新的文章(根据用户权限不同,实现不同的发布流程)审核文章(包括对文章的编辑、删除)类别管理(添加、修改、删除)评论管理(按照文章进行评论的编辑、删除,可以显示所有文章评论)文章管理(包括对文章的添加、编辑、删除)第3章 系统开发方法及开发工具选取本文介绍了网站新闻发布管理部分的分析与建立,采用B/S(Brower/Server 浏览器/服务器)模式,应用先进的.NET平台体系,利用面向对象的理论技术和思想,使用ASP.NET和ADO.NET作为主要的开发技术,Visual Studio 2005作为主要的开发平台,完成整体的系统开发。下面介绍系统的开发方法和相关软件工具。3.1系统开发基础3.1.1 基于Web的网络应用开发语言及技术在ASP.NET出现之前,可用来开发Web应用的三种主要技术和平台是:ASP、JSP(Java Server Page)和开源Web平台(通常称为LAMP, Linux+Apache+MySQL+Perl/Python/PHP三种编程语言中的一种)。虽然这些开发平台各自都有与特定语言特征和特定构架有关的特征,但是它们的目的都是创建基于Web的应用的交互式页面。在某种程度上,所有这些技术都使开发人员能够通过使用页面本身负责调用和生成的组建,将编成逻辑和页面布局相分离。除了这个共有的最终目的,这些平台之间存在显著的区别,这些区别大多与他们宣扬和支持的编成模型和语言有关。例如,JSP利用Java类框架,它与JavaBeans一起提供了组建重用的有效扩展模型。此外,JSP支持标记定制,允许开发人员将代码与定制的标记定义相关联。最后,因为JSP是J2EE(Java 2 Enterprise Edition)平台的一个关键要素,所以它依靠Java语言。Java语言是最好的已编译语言,ASP和LAMP平台使用的脚本语言则不同。那么,ASP.NET是怎么做到正好合适的呢?同ASP和其他Web开发环境一样,ASP.NET 也是建立在HTTP协议之上的,它利用HTTP命令和策略建立双向的、浏览器到服务器的通信和协作。真正使ASP.NET有别其他Web开发技术的是它提出抽象的编程模型,即Web窗体模型。ASP.NET应用是一些已编译的代码部件,由一些可重用且可扩展的组建组成,可以用第一类语言(包括C#、Microsoft Visual Basic .NET、Microsoft Jscript.NET和J#)创建,并且可以访问.NET Framework中整个类的层次结构。总之,ASP.NET具有相当多的优势:在语法上,它与ASP兼容(在一定程度上语言也兼容);他提供的面向对象特征(标记定制、已编译的语言、组件、可扩展性和可重用行)与JSP应用相同。ASP.NET提供了大量特别吸引人的功能、工具和强大的系统特征,它们可以在对HTTP编程模型进行抽象地覆盖表达式工具内进行有效的组合,从而为ASP.NET锦上添花。大量程序员友好的类允许使用典型的桌面方法进行页面开发。Web窗体(Web Form)模型进一步曾强了事件驱动的方法,但是Web窗体要通过Web进行部署1。.NET Framework和ASP.NET为Web应用程序提供默认授权和验证方案。可以方便地移除、添加或者替换这些方案,这取决于应用程序的需要。C#语言是一门简单,现代,优雅,面向对象,类型安全,平台独立的一门新型组件编程语言。其语法风格源自C/C+家族,融合了Visual Basic的高效和C/C+强大,是微软为奠定其下一互联网霸主地位而打造的Microsoft.Net平台的主流语言。其一经推出便以其强大的操作能力,优雅的语法风格,创新的语言特性,第一等的面向组件编程的支持而深受世界各地程序员的好评和喜爱。C#语言日前已由微软提交欧洲计算机制造商协会ECMA,经过标准化后的C#将可由任何厂商在任何平台上实现其开发工具及其支持软件,这为C#的发展提供了强大的驱动力,我们也可从这里看到微软前所未有的眼光和智慧。针对开发的新闻发布管理,希望能够最大化的实现产品应用的广泛性,并希望在以后能有一个更加宽广的平台支持,C#语言是一个相当不错的选择,首先它有着丰富全面的功能表现,其次有着微软强大的技术支持,最后便利的开发环境是其他开发语言所不能比拟的,所以我们选择了它作为我们的开发语言。3.1.2 ADO.NET数据库联接技术ADO.NET(ActiveX Data Objects+)由ADO发展而来,它是用于创建分布式共享数据应用程序的标准程序模型。ADO.NET被设计为基于网络的可扩展的应用程序和服务提供数据访问服务。ADO.NET为连接的指针风格的数据访问,同时也为更适合于把数据返回到客户端应用程序的无连接的数据模板提供高性能的API流。ADO.NET结构如图3.1所示。图3.1 ADO.NET结构ADO.NET定义了链接数据仓库、对数据仓库发送命令及从中获取结果的类。这些类由受控数据提供者(Managed Data Provider)实现。ADO.NET中链接和命令对象看上去和ADO中的是一样的,并且一个名为DataReader的新类提供了通过高性能API流获取结果的能力。DataReader在功能上和ADO记录集(Recorder)是等同的,但是DataReader被设计用来最小化内存中生成的对象的数量,以提高性能,避免垃圾积累。在.NET Framework中包含了针对Microsoft SQL Server的受控数据提供者以及可通过OLE DB访问的任何数据仓库18。ADO.NET的一个主要创新是引入了数据集(DataSet)。一个数据集是内存中提供数据关系图的高速缓冲区。数据集对数据源一无所知,他们可以由程序或通过从数据仓库中调入数据而被生成、填充。不论数据从何处获取,数据集都是通过使用同样的程序模板而被操作的,并且它使用相同的潜在的数据缓冲区。使用.NET平台的开发人员能够用数据集代替传统ADO中无连接的记录集。ADO.NET体系结构的另一个核心元素是.NET数据提供程序,这些组件设计用来实现一些数据操作快速访问、单向访问、只读访问数据等等。Connection对象提供了对一个数据源的连接6。Command对象可用于访问数据库命令并返回数据、修改数据、运行存储过程,以及发送或取得参数信息。DataReader提供一个来自数据源的高性能数据流。最后,DataAdapter在DataSet对象和数据源之间提供桥梁。DataAdapter使用Command对象对数据源执行SQL命令,用数据装载DataSet对象,并且使DataSet对象中的数据改变和数据源保持一致。从2.0版本开始,ADO.NET支持表3.1所列的数据提供程序。表3.1 ADO.NET支持的托管数据提供程序 数据源命名空间描述SLQ ServerSystem.Data.SqlClient针对各种版本的SQL Server,包括SQL Server7.0、SQL Server2000和最新的SQL Server2005OLE DB提供程序System.Data.OleDb针对OLE DB 提供程序,包括SQLOLEDB、MSDAORA和Jet引擎ODBC驱动程序System.Data.Odbc针对几个ODBC驱动程序,包括用于SQL Server、Oracle和Jet引擎的那些驱动程序OracleSystem.Data.OracleClient针对Oracle 9i,支持他的全部数据类型3.1.3 不经过回发而实现客户端回调技术不经过回发而实现客户端回调,避免丢失客户端状态并且不导致服务器往返的处理开销,通过对 ASP.NET 网页编码,使其能执行客户端回调。在客户端回调中,客户端脚本函数会向 ASP.NET 网页发送一个请求。该网页运行其正常生命周期的修改版本 初始化页并创建其控件和其他成员,然后调用特别标记的方法。该方法执行代码中编写的处理过程,然后向浏览器返回可由另一客户端脚本函数读取的值。在此过程中,该页一直驻留在浏览器中。创建实现客户端回调的 ASP.NET 页与创建任何 ASP.NET 页类似,但也有些不同。例如,该页必须执行以下操作:实现 ICallbackEventHandler 接口。可以向任何 ASP.NET 网页添加此接口声明。包括一个实现 RaiseCallbackEvent 接口的方法。此方法将由回调来调用,然后它将向 ClientCallback 函数返回一个字符串。同时,还必须包含执行以下操作的三个客户端脚本函数:一个函数调用帮助器方法,该方法执行对服务器的实际请求。在此函数中,可以首先执行自定义逻辑以准备事件参数,然后可以将一个字符串作为参数发送到服务器端回调事件处理程序。另一个函数由处理回调事件的服务器代码的结果调用并接收该结果,同时接受表示该结果的字符串。该函数称为 ClientCallBack 函数。第三个函数是执行对服务器的实际请求的 Helper 函数,当在服务器代码中使用 GetCallbackEventReference 方法生成对此函数的引用时,由 ASP.NET 自动生成该函数。客户端回调及回发都是对起始页的请求,因此在 Web 服务器日志中将客户端回调及回发记录为页请求。若要从客户端成功运行服务器代码,而不执行回发,则还必须在服务器代码中声明 EventHandler 接口。此外,在服务器代码中,还必须创建实现 RaiseCallbackEvent 接口的方法。该方法使用一个字符串参数,而不是事件处理程序常用的那两个常见参数。该方法也返回一个字符串。以上工作结束后,我们还需要向页中添加客户端脚本函数以执行两个功能:向服务器页发送回调和接收结果。这两个客户端脚本函数都是用 ECMAScript (JavaScript) 编写。(1)发送回调发送回调的函数在服务器代码中生成。实际回调由任何页都可使用的、实现ICallbackEventHandler 接口的库函数执行。通过调用页的 GetCallbackEventReference 方法,可获取对该库函数的引用,然后动态生成一个客户端函数,该函数包含对从 GetCallbackEventReference 方法之一返回的值的调用。向该方法传递以下内容:对页的一个引用、传递数据时所依据的参数名称、将接收回调数据的客户端脚本函数的名称,以及传递所需的任何上下文的参数。生成函数之后,通过调用 RegisterClientScriptBlock 方法将其插入到页中。(2)接收回调可以编写在页中静态接收回调的客户端函数。该函数的名称必须与在 GetCallbackEventReference 方法调用中传递的名称相匹配。接收函数接受两个字符串值:一个用于返回值,另一个(可选)用于从服务器传回的上下文值。3.2 系统结构选择基于内容管理系统的特性,为了达到方便的新闻发布和管理,本系统的开发采用了B/S结构,所有的工作都能通过网络完成,简单易用。(1)采用B/S开发的优势当前软件开发基于两种架构的开发C/S (Client/Server 客户端/服务器)和B/S。C/S是指在服务器上安装服务器软件,同时,在客户机上安装相应的客户端,使客户端得到相应的服务。客户端应用程序不仅要提供图形化的接口,与客户进行人机交互,同时还肩负着数据处理、逻辑运算和商业规则处理等任务,显然加重了客户端应用程序的负担。此外,C/S结构的致命弱点是:如果商业规则、逻辑运算或者数据处理等发生变化时,原有的客户端应用程序必须重新编译成可执行文件,重新安装到每个客户的计算机上,才可以重新正常的工作。再者,数据库报务器同样受到约束,它是数据存储管理的场所,负责管理每个客户端请求的连接。当客户连接多时,可能会超数据库服务器所规定的同时最大连接数,导致后来打开客户端程序的客户无法存取数据库。随着企业规模的不断增大,其要求的规则将随之增多,应用程序的复杂程度也就小断提高。这样,传统的C/S式的架构由于自身的缺陷,严重的制约了其发展和推广。与此同时,许多企业己经建起了自己的企业内部网Intranet系统,互联网为众多的员工所接受。于是在考虑如何解决C/S架构存在的问题时,技术人员提出了“客户端的用户界面(User Interface)全部使用浏览器”。通过对效率、处理响应速度、扩充性和安全性的考虑,专家们最终提出了B/S三层架构。B/S架构采用互联网的信息传递方式,客户端通过浏览器请求Web, Web服务器处理Web请求,按需与数据库进行交互,最终将Web页面发送到客户端的浏览器,于是客户端通过Web得到自己所需的信息。B/S架构的出现,其中一个主要动力就是为了改善传统的C/S架构存在的缺点,与C/S架构相比,B/S架构具有许多优点,其中主要有以下几个方而的优点:系统具有良好的增容性 B/S架构对客户端要求比较低,只需安装IE4以上的浏览器软件即可。客户端接入Intranet,通过了系统认证,得到权限后,就可以得到系统的服务。由于可以采用连接池(Pooling)技术,可以在一定程度上将增加一个客户端的影响降低到最小。集中了C/S架构和基于主机模型(原有的工作站方式)的优点服务器负责向用户提供信息和要求的数据,通过客户端浏览器软件,呈现给用户的图形化界面。服务器控制信息的布局和内容,使得信息的控制和管理非常可靠,这是基于主机的集中管理的优点。然而,客户不仅仅是一个终端,它执行类似信息高速缓存和在本地存储由用户下载的信息类似这样的任务。因此,B/S处理架构吸取了C/S架构的精华,又结合了基于主机的优点。系统具有良好的可维护性由于客户端只需要浏览器,而且程序在服务器上运行,数据库统一集中管理,整个系统只有一个主数据库,存放在总部的服务器里。所以当商业逻辑或者数学运算规则等发生变化时,客户端无需进行任何改动,只需维护服务器上的相关程序或者组件即可,从而减轻了系统维护与升级的成本和工作量。整个软件的开发可集中在服务器端进行,不必对客户端进行特殊设置和软件安装,降低维护成本。可靠的安全性由于内网一般都通过防火墙与Internet相通,所以任何来自Internet的浏览器提交的请求,都要通过防火墙,得到认证后,方可进入。这虽然不能保证百分之百的安全,但至少阻断了大多数不当或者恶意的入侵。具有优秀的跨平台性和较高的信息共享度超文本链接标示语言(HTML语言,Hypertext Markup Language),是数据格式的一个开放标准,大多数流行的操作系统软件都支持HTML。因而只需在平台上安装支持HTML的相应的浏览器软件,即可享受共享的信息。(2)B/S模式的数据库体系结构近年来由于Internet/Intranet技术的发展和普及,各种各样的信息都在WWW(World Wide Web)上发布,人们之间的信息沟通比以往变得更为高效快捷,Web技术的应用己成为一种必然。但传统的客户机/服务器模式的数据库设计与Web的相关技术互相独立,两者无法进行集成。浏览器/服务器模式的数据库体系将客户机/服务器模式的数据库结构与WEB技术密切结合,从而形成具有三层WEB结构的浏览器/服务器模式的数据库体系,具体结构如图3.2所示。图3.2 三层Web浏览器、服务器模式工作原理:在前端采用IE等的浏览器将用户提交的操作信息传向WEB服务器,然后通过一些中间组件访问后台数据库,操作结果以HTML页面的形式返回给前端浏览器。3.3 开发平台选择 Microsoft公司主推的.NET技术己经越来越受到重视,并且运用的范围也越来越广,.NET框架是一种新的计算机平台,它简化了在高度分布式Internet环境中的应用程序开发,.NET框架旨在实现下列的目标: (1)提供一个一致的面向对象的编程环境,无论对象代码是在本地存储和执行,还是在本地执行并在Internet上分布,或者是在远程执行。 (2)提供一个将软件部署和版本控制冲突最小化的代码执行环境。 (3)提供一个保证代码(包括由未知的或不完全受信任的第三方创建的代码) 安全执行的代码执行环境。 (4)提供一个解决脚本环境或解释环境性能问题的代码执行环境。 (5)使开发人员的经验在面对类型大不相同的应用程序(如基于Windows的应用程序和基于Web的应用程序)时保持一致。 (6)按照工业标准生成所有通信,以确保基于.NET框架的代码可与任何其他代码集成。.NET框架具有两个主要组件:公共语言运行库(CLR)和.NET框架类库。公共语言运行库是.NET框架的基础。运行库可以看作一个在执行时管理代码的代理,提供核心服务(如内存管理,线程管理和远程处理),而且还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。类库是一个综合性的面向对象的可重用类型集合,用户可以用它开发包含从传统的命令行或图形用户界面(GUI)应用程序到基于最新的ASP.NET技术(如Web窗体和XML Web服务)在内的应用程序19。本设计在开发基于Web的新闻发布管理部分时,考虑到大部分操作都涉及到与维护管理人员和用户动态地进行信息交互,因此要求系统能够实现数据的动态管理功能。重要的是,基于对整个系统合理的架构要求、后台数据库需要提供数据管理和控制服务、数据的标准化安全访问、系统的安全和可靠等多方面的考虑,我们采用先进的.Net框架作为本系统开发平台。3.4系统开发工具选取3.4.1 MS Visual Studio 2005 集成开发环境 Visual Studio .NET是一套完整的开发工具,用于生成ASP Web应用程序、XML Web services、桌面应用程序和移动应用程序。Visual Basic .NET、Visual C+.NET、 Visual C# .NET和Visual J# .NET全都使用相同的集成开发环境(I DE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NET Framework的功能,此框架提供对简化ASP Web应用程序和XML Web services开发的关键技术的访问。(1)Visual J# Visual J#是一种开发工具,供熟悉Java语言语法的开发人员在.NETFramework上生成应用程序和服务时使用。该工具将Java语言语法集成到Visual Studio .NET集成开发环境(IDE)中。Visual J#还支持Visual J+ 6.0中具有的大多数功能,包括Microsoft扩展。Visual J#不是一种用于开发在Java虚拟机上运行的应用程序的工具。使用Visual J#生成的应用程序和服务只在.NET Framework上运行。Visual J#由Microsoft独立开发,它没有经过Sun Microsystems, Inc.的认可和批准。 (2)智能设备应用程序 Visual Studio .NET集成开发环境现在包括开发智能设备(如Pocket PC )应用程序的工具。通过使用这些工具和.NET Framework精简版(.NET Framework的子集),可以在个人数字助理(PDA)、移动电话和其他资源受约束的设备中,创建、生成、调试和部署在.NET Framework精简版上运行的应用程序。 (3)ASP.NET移动设计器 ASP NET移动设计器扩展了ASP.NET和,NET Framework,可用来生成移动电话、PDA和寻呼机的Web应用程序。此设计器集成在Visual Studio IDE中。您可以创建移动Web应用程序,使用移动设计器修改移动Web窗体,然后生成和运行该应用程序(所有这些操作都是在Usual Studio中完成的)。 (4)Web窗体 Web窗体是用于创建可编程Web页的ASP.NE下技术。Web窗体将自己呈现为浏览器兼容的HTML和脚本,这使任何平台上的任何浏览器都可以查看Web页。使用Web窗体,通过将控件拖放到设计器上然后添加代码来创建Web页,与创建Visual Basic窗体的方法相似。(5)Windows窗体Windows窗体是用于Microsoft Windows应用程序开发的,基于.NET Framework的新平台。此框架提供一个有条理的、面向对象的、可扩展的类集,使您能够开发功能丰富的Window应用程序。另外,Windows窗体可作为多层分布式解决方案中的本地用户界面。考虑到系统开发和以后的二次开发维护过程中,进一步提高系统的效率和易用性,可能会创建混合语言解决方案,所以我们选择了微软最新推出的Visual Studio 2005作为我们的集成开发环境。3.4.2 SQL Server数据库服务器 今天的商业环境要求不同类型的数据库解决方案,性能、可伸缩性及可靠性是基本要求。除这些核心企业品质外,从数据管理和分析角度看,将原始数据转化为商业智能和充分利用Web带来的机会非常重要。作为一个完备的数据库和数据分析包,SQL Server 2005为快速开发新一代企业级商业应用程序、为企业赢得核心竞争优势打开了胜利之门。SQL Server 2005是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言(XML)的核心支持以及在Internet上和防火墙外进行查询的能力。SQL Server 2005是一项全面完整的数据库与分析产品。从借助浏览器实现的数据库查询功能到内容丰富的扩展标记语言(XML)支持特性均可有力地证明,SQL Server 2005无谓为全面支持Web功能的数据库解决方案。与此同时,SQL Server 2005还在可伸缩性与可靠性方面保持着多项基准测试纪录,而这两方面特性又都是企业数据库系统在激烈市场竞争中克敌致胜的关键所在。无论以应用程序开发速度还是以事务处理运行速度来衡量,SQL Server 2005都堪称最为快捷的数据库系统。随着用户使用系统时间的增长,需要管理和维护的数据量急剧增长,一般较小的数据库服务系统无法满足客户的需要,另外SQL Server2005与Visual Studio 2005作为微软最新一代的企业级的开发平台,在系统本身的结合型、兼容性上比与其它的数据库系统有着明显的优势,所以选取了SQL Server 2005作为开发系统的数据库服务系统。第4章 系统总体结构设计 新闻发布管理是一个基于Web的信息系统,它本身的应用属性与应用范围决定了它只能采用B/S结构,同时由于其涉及到复杂的业务逻辑,只能采用以Web数据库技术为核心的动态网页技术来实现,因此新闻发布管理设计为基本B/S结构的三层结构,极其简化了系统的部署与管理,又有强大的功能,建立具有高度可伸缩性和可靠性的动态Web应用。4.1 功能模块划分根据第2章用户需求,最终确定的系统模块如图4.1所示。图4.1 系统模块图(1)文章显示模块显示最新最热发布信息动态显示文章分类及对应文章信息分类显示显示文章详细内容添加评论(2)文章管理模块根据权限设置是否具有审核功能添加文章添加文章图片编辑文章删除文章预览文章(3)分类管理模块显示分类修改分类删除分类添加分类(4)评论管理模块显示评论编辑评论删除评论(5)新闻审核模块显示文章编辑文章删除文章审核文章综合第2章需求分析 系统的模块功能如图4.2 所示。图4.2 模块功能图4.2 系统页面设计在ASP.NET应用程序中,系统都是通过网页的形式表现出来的,如何合理地设计各个页面,将它们有机地结合在一起,体现程序的功能,是一个非常重要的方面。程序中主要有两大模块,前台展示区和后台管理区,目前大多数管理文件的结构是把这两部分分开存放,以便于开发和用户使用。另外ASP.NET中可以针对不同的文件夹设置不同系统配置,我们采取了把后台文文件存放在Admin文件夹中也是出于这方面的考虑。每个网页要体现系统中一个或几个功能。用户界面布局图能够避免网站混乱,它对于规划网站是很有用的。而且,一旦确定了一种有效的网站结构组织方式,它还可以作为一个固定的模式在多个网站上应用。本系统的用户界面布局如图4.3所示。图4.3 系统页面布局图第5章 数据库设计5.1 概念设计根据第2章用户需求分析,新闻管理模块主要涉及文章、评论、类别三方面的问题,从技术方面出发,构建了Article、Comment、Category三个数据库表。三个表之间通过外键建立关系,既保持了自己表的独立性,又紧密了表间联系。Article表作为本系统内容的主要部分,需要对它进行的操作是相当多的,除了描述文章信息的基本字段外,针对文章的各种操作,需要为表添加相对应的字段。文章的基本信息包括文章的标题、作者、内容、发布时间、过期时间、编辑人、类别等。功能字段包括阅读次数、审核、评价、文章地址(URL)、阅读级别等。Comment表是记录文章评论的表,浏览网站的用户有时需要对阅读的文章发表自己的看法,互相之间进行交流等。Comment表字段比较少,主要包括评论人、发布时间、评论内容等。该表依附于文章表,通过外键与文章表进行关联。Category表用于记录文章分类信息,包括文章类别的基本信息,如类别名称、类别描述,创建人的信息、创建时间、类别描述图片的信息等。类别信息是文章所不能缺少的一部分,每一篇文章都从属于也只能从属于一个文章类别,因此该字段与文章表通过外键建立了约束关系。软件E-R图如图5.1所示。 图5.1系统E-R图5.2 数据库的逻辑结构设计与新闻发布有关的数据库表包括Article表、Comment表和Category表。(1)Article表Article表主要用于存放文章的基本信息和功能字段,主要的字段包括:文章编号、标题、作者、摘要、内容、类别、编辑、阅读级别、评价、审核、审核人、地址(URL),类别编号作为该表的外键。(2)Comment表Comment表用于存放与文章评论有关信息,主要字段为评论编号、评论人、发表日期、评论内容,文章编号作为该表的外键。(3)Category表Category表用于存放于文章类别有关信息,主要字段为类别编号、名称、类别描述、创建人、描述图片地址等。5.3 数据库表结构设计根据上节数据库逻辑结构设计,设计出的本系统的数据库物理结构如下所示。(1)Article表表5.1 Article表表名Article列名注释数据类型(精度范围)空/非空约束条件id文章编号integer非PK,自动增长headline文章标题nvarchar(500)非author作者nchar(256)非summary文章摘要ntext非editorid编辑编号nniqueidentifer非editorname编辑nchar(256)非content文章内容ntext非audit是否审核bit非hits点击数integer非date发布时间datetime非outdate过期时间datetime非edittime更新时间datetime非categorynam类别名称nchar(256)非categoryid类别编号integer非FK:News_Categoryarea面向地区nvarchar(10)非readclass阅读级别integer非audited审核人编号uniqueidentifier非auditname审核人姓名nchar(256)非audittime审核时间datetime非rating评价integer非url文章地址nchar(256)空补充说明(2)Comment表表5.2 Comment表表名News_Comment列名注释数据类型(精度范围)空/非空约束条件id评论编号int非PK,自动增长articleid评论文章编号int非FK:News_Article表content评论内容ntext非authorname作者姓名nchar(256)非authorid作者编号uniqueidentifier非date发布时间datetime非补充说明(3)Category表表5.3 Category表表名News_Category列名注释数据类型(精度范围)空/非空约束条件id类别编号int非PK,自动增长name类别名称nchar(256)非creatdate创建日期datetime非creatorname创建人名称nchar(256)非creatorid创建人编号uniqueidentifier非photosrc类别图片地址nvarchar(max)非description

温馨提示

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

评论

0/150

提交评论