免费预览已结束,剩余40页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本 科 毕 业 论 文 ASP.NET AJAX框架下Web网页的设计与实现Design and Implementation of a Web page using ASP.NET AJAX Framework姓 名: 学 号:学院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘要 Ajax (Asynchronous JavaScript And XML)是一种Web应用程序开发技术。这个技术采用了异步调用的方式,促使页面局部刷新,所以它可以仅仅向服务器传送和接收自己所需要的数据,从而减少网络流量,并可以使Web应用程序具有更高的即时响应性,更好的交互性和更方便的个性化服务,使用户像使用桌面应用程序一样使用Web应用程序。本课题是基于Ajax技术,在Microsoft公司提供的ASP.NET 2.0 Ajax框架下,围绕Web应用的异步局部更新进行研究。理论上,探讨了Ajax的核心技术和开发模式,从应用原理和设计模式方面探讨了Ajax模式与传统模式下的Web开发的区别与联系。实践中,为Ajax的应用搭建了ASP NET Ajax开发环境,将Ajax技术应用到具体实例NBA在线文字直播模块与VIP会客室模块,充分发挥出 Ajax开发的优越性.本课题的主要工作包括以下几个方面:1) 将Ajax技术与传统Web开发技术进行了比较分析,总结得出了Ajax技术的应用特征和主要优势,将Ajax应用的系统中。2) 深入探讨了Microsoft公司提供的ASP.NET 2.0 Ajax框架,为基于Ajax实例开发搭建了ASP NET Ajax开发环境,配置了ASP NET Ajax Web应用程序。3) 将Ajax应用系统中,在NBA在线文字模块中,实现比赛无刷新动态直播,比分的动态更新。4) 将Ajax应用系统中,在VIP会客室模块,无刷新动态提交问题问题,减少页面的重载,较低服务器的开销,增强了用户体验。关键词: ajax; ajax 框架;异步局部更新AbstractAjax (Asynchronous JavaScript And XML) is a web application development technology. This technology uses the asynchronous mode call to partial page refresh. So the server can only send and receive data they need, thereby reducing network traffic. Web applications can make real-time response to a higher, more good interactive and user-friendly. It makes users to use Web application such as using desktop applications.This subject is based on ajax technology ,and makes research on local asynchronous update of web applications ,using the framework of ASP.NET 2.0 Ajax provided by the Microsoft Corporation. In theory , it studied the core of Ajax technology to see the differences between the traditional web applications and the ajax on the principle and design patterns of web development. Practically , it make full use of the advantages of ajax to develop the NBA online text-live module and the VIP reception room module.The main work of this subject include the following:1) comparing ajax technology with traditional web development technologies,obtained the features and the main advantages of ajax technology .2) studied ASP.NET 2.0 Ajax framework provided by Microsoft Corporation , setted up ASP NET Ajax development environment, equipped with ASP NET Ajax Web applications.3) using ajax technology on NBA online text-live module to achieve race-free text live, the scores dynamic update.4) using ajax technology on VIP reception room modules, to submit and response the question without refreshing, to reduce the heavy load the page, lower server costs, and enhance the user experience.Key words: ajax; ajax framework ; asynchronous partial update目 录第一章 绪论1 1.1 选题背景- 1 -1.2 国内外发展现状- 1 -1.3 课题研究内容- 2 -第二章 技术背景- 4 -2.1 Ajax简介- 4 -2.1.1 Ajax定义- 4 -2.1.2 AJAX的优势- 4 -2.1.3 AJAX的弊端- 4 -2.2 ASP.NET AJAX框架- 5 -2.3 SQL缓存依赖- 6 -第三章 系统总体设计- 8 -3.1系统开发环境- 8 -3.1.1软件环境- 8 -3.1.2硬件环境- 8 -3.1.3开发工具- 8 -3.2系统体系结构- 8 -3.3系统整体功能分析与设计- 9 -3.3.1系统整体需求分析- 9 -3.3.2系统用例图- 10 -3.3.3数据库逻辑设计- 11 -3.4本章小结- 15 -第四章 系统详细设计- 16 -4.1 系统功能模块划分- 16 -4.2 系统总体框架设计- 16 -4.3 页面局部更新设计- 17 -4.4 NBA文字直播后台管理模块分析与设计- 19 -4.4.1.NBA文字直播后台管理功能分析- 19 -4.4.2 NBA在线文字直播后台管理功能详细设计- 19 -4.5 NBA文字直播普通用户模块分析与设计- 23 -4.6 VIP会客室模块分析与设计- 24 -4.7 本章小结- 25 -第五章 系统测试与运行结果- 26 -5.1NBA在线文字直播后台管理模块测试与运行结果- 26 -5.1.1赛程管理测试与运行结果- 26 -5.1.2球员管理测试与运行结果- 27 -5.1.3球队管理测试与运行结果- 28 -5.1.4直播管理测试与运行结果- 29 -5.2 NBA在线文字直播普通用户模块测试与运行结果- 30 -5.3 VIP会客室模块测试与运行结果- 32 -第六章 总结与展望- 35 -6.1 总结- 35 -6.2 展望- 35 -致谢- 36 -参考文献- 37 -ContentsChapter 1 Introduction- 1 -1.1 Background of the subject - 1 -1.2 Development of 6 at home and abroad about the subject- 1 -1.3 Research content ot the subject- 2 -Chapter2 Introduction To Main Technologies- 4 -2.1 Introduction to Ajax- 4 -2.1.1 Ajax definition- 4 -2.1.2 AJAX advantage- 4 -2.1.3 AJAX disadvantage- 4 -2.2 Introduction to ASP.NET AJAX Framework- 5 -2.3 Introduction to Sql cache dependency- 6 -Chapter3 System Design and Analysis- 8 -3.1 System Development Environment- 8 -3.1.1 Software Environment- 8 -3.1.2 Hardware environment- 8 -3.1.3 Tools- 8 -3.2 System Architecture- 8 -3.3 System Overrall Analysis and Design- 9 -3.3.1 Analysis of the overall demand for the system- 9 -3.3.2 System Use Case Diagram- 10 -3.3.3 Logical Database Design- 11 -3.4 Summary of this chapter- 15 -Chapter4 System Detail Design and Analysis- 16 -4.1 functional modules - 16 -4.2 The overall framework of system design- 16 -4.3 Partial page update Design- 17 -4.4 Analysis And Design of NBA text-live background management module- 19 -4.4.1.Functions of NBA text-live background management module- 19 -4.4.2.Detail Design of NBA text-live background management module- 19 -4.5 Analysis And Design of NBA text-live the user module- 23 -4.6 Analysis and Design of VIP reception module- 24 -4.7 Summary of this chapter- 25 -Chapter5 System Testing and The Running Results- 26 -5.1 Testing and The Running Results of NBA text-live background management module- 26 -5.1.1 Testing and The Running Results of schedule management- 26 -5.1.2 Testing and The Running Results of player management- 27 -5.1.3 Testing and The Running Results of team management- 28 -5.1.4 Testing and The Running Results of live management- 29 -5.2 Testing and The Running Results of NBA text-live the user module- 30 -5.3 Testing and The Running Results of VIP reception module- 32 -Chapter6 Summarize and outlook- 35 -6.1 Summarize- 35 -6.2 outlook- 35 -Acknowledgement- 36 -References- 37 -第一章 绪论1.1 选题背景目前互联网正在从传统Web1.0逐渐向开放的、可读写的、多媒体的Web2.01,交互平台过渡,适应个人用户逐渐参与Web站点的互动要求。以用户体验型的网络服务为特征的Web应用代表了目前互联网的发展趋势。一种新的Web应用交互模型Ajax交互模型的出现为我们提供了一种新的Web设计方法。通过对Ajax模式的应用,不仅改变了传统Web应用模式,同时也开拓了Web开发的一片新领域。Ajax技术成为研究的热点,各种辅助开发框架应运而生.微软也推出了自己的解决方-ASP.NET AJAX.其客户端编程模型给开发者提供了一个清晰、直观、易用的开发环境,解决了客户端JavaScript代码结构不清晰、难以维护和管理的问题。本课题采用微软公司推出的ASP.NET AJAX框架。1.2 国内外发展现状 2005年2月Web设计咨询企业Adaptive Path公司用户体验总监耶西加勒 (Jesse James Garrett)发表了名为Ajax: A New Approach to Web Applications2,这是Ajax一词的首次提出。虽然Ajax于2005年2月刚刚提出,但是基于构建胖客户端的WEB应用程序的特性,以及可开发友好的用户界面,良好的交互性和互操作性,使其得到越来越多的人的青睐,并将其列入Web2.0的核心技术3。Web2.0是相对Web 1.0(2003年以前的互联网模式)的新的一类互联网应用的统称,是一次从核心内容到外部应用的革命。它以Blog, SNS, RSS, Wiki等应用为核心,依据六度分隔理论、XML,Ajax等新理论和技术实现的互联网新一代模式4。Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合。Ajax并没有创造出某种具体的新技术,它所使用的所有技术都是在很多年前就已经存在了,然而Ajax以一种崭新的方式来使用所有的这些技术,使得古老的B/S方式的,Web开发焕发了新的活力,迎来了第二个春天。Ajax基于以下的技术:XHTML, CSS, DOM, JavaScript:, XML和XMLHttpRequest 。以上可以看出,除了XMLHttpRequest以外,所有的技术都是目前已经广泛使用,得到了广泛理解的基于Web标准的技术。而XMLHttpRequest虽然尚未被W3C采纳,其实已经是一个事实上的标准。几乎所有主流的浏览器,例如IE, Firefox, Netscape, Opera, Safari全部都支持这个技术5。所以Ajax就是目前做Web开发最符合标准的技术。上述的所有技术都已经可以在浏览器中使用,因此用户不需要安装任何额外的软件,只需要一个浏览器,例如IE,就可以运行任何符合标准的Ajax应用。这对于Ajax技术的普及、降低部署维护的成本是非常重要的。目前Ajax已经成为了Web应用的主流开发技术。一个网页测试公司经测试得出使用Ajax比使用传统的web总带宽节约61%,节约空间和宽带租用成本6。大量的业界巨头已经采纳,并且在大力推动这个技术的发展7。1) IBM, Oracle, Yahoo!, BEA, RedHat, Novell等页界领先的公司启动了Open Ajax项目。致力于为Ajax开发建造先进强大的的开发工具。2) 微软开发了自己的Ajax框架A Ajax,主要是和服务器端ASRNET框架配合工作。3) Sun虽然行动迟缓,但是也将Ajax技术列入了J2EE的blueprint(蓝图)中,作为J2EE技术的有益的补充。4) Google公司率先采用Ajax技术建造出了一大堆非常出色的应用,将Ajax技术引到了聚光灯下。Google公司建造的Ajax应用包括Google Maps, G Mail, Google Suggest等等,其中公认最优秀最复杂的Ajax应用是Google Maps。由于完全基于Ajax技术来建造Google Maps的界面,Google Maps提供了远远超越其竞争对手的地图服务的交互体验。如果说Google后台的地图技术并不存在巨大优势的话,那么Ajax技术和优秀的交互设计成为了他们压倒竞争对手的最后一根稻草。最终使得Google Maps脱颖而出,获得了用户的青睐。5) Ajax的典型应用除了Google Maps,还有微软的Windows Live, Yahoo!的Flickr等等。此外国内新浪的Blog,雅虎中国的Web应用及其它的邮箱也使用了一些Ajax的技术8。1.3 课题研究内容本课题运用了AJAX异步技术应用设计思想,深入探讨了AJAX异步技术在现在和将来网站设计中的重要性和必要性。并在此基础上,采用了Microsoft公司的软件开发平台ASP.NET。使用A Ajax 设计完成了基于AJAX异步技术应用的NBA在线文字直播模块和VIP会客室模块。对如何建立、使用AJAX技术,以及如何实现异步功能的相关技术和方法进行全面深入的探讨和实践。完成了基于AJAX局部异步应用技术的AJAX NBA在线文字直播模块和VIP会客室模块规划和设计。在NBA在线文字直播模块实现对比赛无刷新动态直播,VIP会客室模块中对问题无刷新动态提交与回复,减少页面的重载,增强了用户体验。第二章 技术背景2.1 Ajax简介2.1.1 Ajax定义2005年2月Jesse James Garret提出了AJAX这个概念,AJAX是AsynchronousJavaScript and XML的缩写,即异步JavaScript+XML。AJAX并不是一门新的语言或技术,它实际上是几项技术按一定方式的组合,在共同的协作中发挥各自的作用,它包括:使用XHTML和CSS标准化呈现;使用DOM实现动态显示和交互;使用XML和XSLT进行数据交换与处理;使用XMLHttpRequest进行异步数据读取;最后用JavaScript绑定和处理所有数据。其中XMLHttpRequest,JavaScript和DOM是AJAX技术的核心9。2.1.2 AJAX的优势与传统的Web开发不同,Ajax应用的优势主要表现在以下几个方面10:1)减轻服务器的负担。2)无刷新更新页面,减少用户实际和心理等待时间。3)可以把以前服务器负担的一些工作转移到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,提高网站程序的带宽性能4)可以调用外部数据。5)基于标准化的并被广泛支持的技术,不需要下载插件或者小程序。6)Ajax使WEB中的界面与应用分离(也可以说是页面呈现和数据的分离)。由此可见,Ajax使得Web应用更加动态,带来了更高的智能,并且提供了表现能力丰富的AjaxUl组件。2.1.3 AJAX的弊端1) Javascript作为Ajax引擎,其兼容性和程序调试都是让人头痛的事;调试Javascript不是很容易的事,方法比较单一,而且有时从抛出的异常很难进行错误的定位;2)可能会破坏web页面的可访问性(Aceessibility)11。由于Ajax动态、渐增式的更新页面从一定程度改变了Web使用模式,而这一变化并不一定是人们所期望的。用户可能没有意识和注意到页面更新、变化的内容,所以容易给用户带来困扰。例如当用户阅读新闻,头条悄然更新而用户却不知就是个问题了若是运用到股票等时效性相当强的领域将是十分有影响的问题。在更新后如何以用户容易接受的方式通知用户,这的确是户AJAX的关键问题。现有的解决方法有:在相关位置提示Ajax采用局部更新;数据更新的区域设计得比较明显;数据更新后给用户提示等;3)对流媒体的支持没有FLASH、JavaApplet好;一些手持设备(如手机、PDA等)现在还不能很好的支持Ajax12;4)Ajax技术的使用要适可而止,不可泛滥使用。使用得当则妙笔生辉,反之过度使用很容易让自己的系统陷入麻烦之中:系统复杂性、调试难度急剧增加,系统运行性能、兼容性也会随之下降13。5)Ajax不容忽视的安全问题。最大的威胁是不良形式的数据。由于使用了异步代码。拒绝服务很容易发生。一种潜在的结果就是服务器资源耗尽,或者因为拒绝服务而引起服务器宕机。Ajax具有一些Web应用的安全问题,除非你在服务器端安装应用防火墙,才能得到保护。比如一些恶意的用户可能会发送脏数据,尤其是创建攻击性的客户端。另一个问题就是未授权的用户访问。在Ajax应用程序中,如果没有服务器端保护的话,一个未授权的用户可以迅速提高自己的级别。Ajax还有一个问题,Ajax技术使得服务器通讯对于用户已经完全不可见,因此,你可以在用户不易觉察的情况下传送数据。这也是一个很大安全隐患14。2.2 ASP.NET AJAX框架 ASP.NET AJAX框架是以ASP.NET 2. 0 为基础的,包括客户端脚本库ASP. NET AJAXControl Library 和服务器端组件ASP. NET 2. 0 AJAX Extensions。ASP. NET AJAX Control Toolkit 是基于以上2 套组件开发的另一套组件15 ,16 。1) ASP.NET 2. 0 AJAX ExtensionsASP.NET 2. 0 AJAX Extensions 是服务器端扩展的集合,主要包含: (1) 序列化与反序列化; (2) 客户端访问Web Service 方法; (3) 服务器端AJAX 控件,包括最重要的ScriptManager 、UpdatePanel 和Timer 控件,并且这些控件被集成在开发环境工具Visual Stu2dio 上,使用方式和其它标准ASP. NET 服务器控件一样。借助于这些扩展,可以将客户端与服务器端两种应用程序模型集成起来,并可以使已有的ASP. NET应用程序模型生成的代码执行于客户端的ASP.NET AJAX运行之上。2) ASP.NET AJAX Control LibraryASP. NET AJAX Control Library 是ASP. NET A2JAX提供的一个丰富的客户端框架,主要包括: (1) JavaScript 的一些基础扩展, 如我们常用的String、Number、Object 、Array、Boolean 等类型对象的扩展; (2) 浏览器的兼容层,使用一个浏览器兼容层脚本库来支持所有流行的脚本库如: IE、Firefox、Safari 等浏览器; (3) 面向对象的类型系统; (4) 异步通讯层,把XMLHttpRequest 对象进行了封装并做了功能扩展,使用更方便; (5) 客户端基础类库,如Behavior 、Com2ponent 、Control 、Debug 等模型。3) ASP.NET AJAX Control ToolkitASP.NET AJAX控件工具包是由微软和非微软的开发人员协作开发的,属共享源码的协作性项目。它包含了30 多个免费的ASP. NET AJAX 控件,这些控件中的大部分利用了核心ASP. NET AJAX 库中引进的Control Extender 模式,为开发人员提供了一个在Web 应用程序中轻松添加AJAX 风格的简便方式17。2.3 SQL缓存依赖关于性能方便的问题,由于在NBA文字直播模块中数据处理频繁,而且传输量大。因此必须考虑缓存问题。Sql缓存依赖可以判断数据库什么时候发生了更改,以便将对应的缓存条目从内存清除掉。有2种技术可以判断源数据在什么时候发生了改变18:我们采取轮询SQL缓存依赖,这是是最灵活的SQL缓存依赖类型,所以对大多数应用程序来说,推荐使用轮询SQL缓存依赖。可以使用轮询SQL缓存依赖来检测数据库表的修改。实质上,轮询SQL缓存依赖使用数据库触发器。当表被修改时,触发器被触发,名为AspNet_ SqlCacheTablesForChangeNotification的数据库表的一行数据将被更新,用来记录表被修改的情况。ASP.NET Framework使用一个后台线程,用来定期轮询数据库表的修改信息。如果有修改,则依赖于数据库表的缓存项目从缓存中移除。如果使用轮询SQL缓存依赖,则可以消除大多数和数据库的通信消费。如果数据库表还没有更改, Web服务器和数据库服务器之间唯一的通信是检查AspNet_SqlCacheTablesForChange- Notification表的修改的查询。因为轮询SQL缓存依赖必须轮询数据库的修改,使用轮询SQL缓存依赖的缓存项目只有在数据修改时才会立即失效。轮询时间间隔的大小决定了缓存数据的陈旧程度,这个时间间隔可为任意需要的值。在使用轮询SQL缓存依赖之前,必须执行下面两步配置19。(1) 必须对一个或多个数据库表启用SQL缓存依赖。(2) 必须在Web配置文件中配置SQL缓存依赖。第三章 系统总体设计3.1系统开发环境3.1.1软件环境开发工具:Visual Studio2005,SqlServer2000开发语言:A,JavaScript,Html开发平台:Windows XP,软件建模:Visio,Startuml3.1.2硬件环境CPU: Intel 赛扬 400 或同频率处理器以上 内存: 256 MB或以上 硬盘: 最少剩余空间不得低于100MB 网络: TCP/IP协议支持的网络(拨号或者专线及局域网接入Internet都可以) 文件系统: FAT32 或者 NTFS (推荐NTFS) 3.1.3开发工具本课题采用的VS版本为Visual Studio 2005。Visual Studio 2005是微软在2005年发布的一个VS版本。.NET 字眼从各种语言的名字中被抹去,但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。这个版本的 Visual Studio 包含有众多版本,分别面向不同的开发角色。同时还永久提供免费的 Visual Studio Express 版本。3.2系统体系结构系统的三层体系结构如图1所示: 图3-1:系统三层架构图3.3系统整体功能分析与设计3.3.1系统整体需求分析需求就是根据用户对产品功能的期望,提出产品外部功能的描述。需要分析所要做的工作是获取系统的需求,归纳系统所要实现的功能,使最终的软件产品最大限度的贴近用户的要求本系统分了两大模块有四个主要用户,分别为直播员、用户和VIP、群众,他们各自在功能方面的需求如下:表3-1:系统需求分析表模块名称模块主要功能模块功能需求描述NBA在线文字直播后台管理主要实现赛程,球员,球队,直播管理 赛程的添加提供赛程信息录入界面。 赛程信息设置提供赛程时间,比赛人员的设置界面。 球员基本信息以及技术统计信息的修改提供球员基本信息的查询界面,输出查询结果。然后可以修改球员基本信息和技术信息。球队基本信息以及技术统计信息的修改提供所以球队的显示界面。然后可以修改球队基本信息和技术信息。可以进行直播提供今日直播列表,选择直播的赛事,进入直播。NBA在线文字直播普通用户模块主要提供球队信息,球员信息,赛程信息,以及直播 查看球队信息提供所有球队供选择。选中的球队的基本信息的呈现,包括球队的球员,以及近7日的赛程。 查看赛程情况默认今天的赛程,提供今日赛程,昨日赛程的按钮。提供根据日期查询赛程的界面。根据查询操作提供赛程的信息(主要是比分情况) 观看直播赛事提供今日直播赛事的列表。可选择要观看的直播,进入直播界面。看对双方的对阵人员,以及比分的直播VIP会客室管模块VIP可以获取未回答的问题,进行恢复,可以删除不合法的问题。群众可以浏览提交问题 浏览问题,选择未回答的问题提供对问题的分类(回答与否)的显示界面。 回复问题提供对选中问题的回复。 删除问题提供删除操作,显示操作结果。 提交问题提供输入问题内容,以及提问者信息的页面。3.3.2系统用例图图3-2:系统用例图3.3.3数据库逻辑设计数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息,它的设计直接关系系统执行的效率和系统的稳定性。因此在软件系统开发中,数据库设计应遵循必要的数据库范式理论,以减少冗余、保证数据的完整性与正确性。只有在合适的数据库产品上设计出合理的数据库模型,才能降低整个系统的编程和维护难度,提高系统的实际运行效率, 该系统使用SQL Server 2005 对数据库进行设计各表的详细定义如下:(1)NBA球员基本信息:NBAplayer表表3-2:数据库中NBAplayer表属性列名数据类型描述playerIDbigint球员编号(主键)namenvarchar球员名字numbernchar球员的号码positionnchar场上的位置heightnvarchar球员身高weightnvarchar球员体重agesmallint球员年龄(2)直播每条信息的内容: 表3-3:数据库中msg表属性列名数据类型描述idbigint信息ID(主键,自动编号)contentvarchar信息的文本内容timenchar此时的时间scorenchar此时的比分gameidInt该场比赛的赛程(外键)numnchar比赛的节数(3)NBA球队基本信息: 表3-4:数据库中NBAteam表属性列名数据类型描述teamIDint球队ID(主键,自动编号)namenchar队名sitenchar球场的位置areanchar球队所属的地区bossnvarchar球队的老板resultnvarchar球队获奖情况ranknvarchar球队排名情况couchnvarchar球队的教练(4)NBA赛程信息:表3-5:数据库中schedule表属性列名数据类型描述idbigint赛程ID(主键,自动编号)timedatetime比赛时间hostTeamnchar主队guestTeamnchar客队stlynchar比赛类型(常规赛,季后赛)statenchar比赛的状态hosthightnvarchar主场最高分guesthightnvarchar客场最高分(4)NBA球队每场比赛的得分信息:表3-6:数据库中teamScore表属性列名数据类型描述gameidbigint赛程ID(外键)teamnamenvarchar球队队名onesmallint第一节得分twosmallint第二节得分threesmallint第三节得分foursamllint第四节的得分totalsmallint总得分(5)每场比赛首发球员关联表:表3-7:数据库中starter表属性列名数据类型描述gameidbigint赛程的teamnamenchar首发球员所在球队playernchar球员(6)球员技术统计的信息:表3-8:数据库中Ptechnical 表属性列名数据类型描述playerNamenchar球员(主键)outCountsmallint出场场数countTimesmallint出场的时间startersmallint首发的场数fgssmallint命中率(%)offencesmallint犯规次数reboundsmallint篮板数(6)球队技术统计的信息:表3-9:数据库中Ttechnical 表属性列名数据类型描述teamnamenvarchar球队(主键)scorefloat平均得分assistssmallint助攻hostresultnvarchar客场战绩guestresultnvarchar主场战绩fgsfloat命中率(%)ranknchar排名reboundsmallint篮板数(7)VIP模块中问题的信息:表3-10:数据库中question表属性列名数据类型描述idbigint问题的ID(主键,自动增加)titlenchar问题标题contentnchar问题的内容timedatetime问题提问的时间statebit问题的状态askernchar提问者askerphonenchar提问者的联系方式askeremailnchar提问者的email()VIP模块中回复的信息:表3-11:数据库中answer表属性列名数据类型描述idbigint回复的ID(主键,自增)timedatetime回复的时间contentnvarchar回复的内容questionidbigint问题的ID(外键)3.4本章小结本章主要介绍系统开发环境,对系统的总体需求进行分析,给出系统用例图。对系统的数据库进行了逻辑设计。第四章 系统详细设计4.1 系统功能模块划分根据用户身份和功能间的关系,结合低耦合高内聚的原则,我们将本项目两大独立模块在细分为三大模块:各模块如下图:图4-1:系统功能模块划分图4.2 系统总体框架设计图4-2:.Net下MVC模式图View由aspx文件来实现,每个aspx对应了一个后端代码aspx.cs。Controller, 通过aspx.cs来实现。每个ASP.NET页面都有一种机制,将页面中的控件所要调用的方法在一个与其分离的类中实现。这些 aspx 和 ascx 文件后端代码继承了System.UI.Web.Page的类执行控制器功能,它包括了各种初始化和控制函数。当加载aspx页面时将调用Page_Load事件,当aspx页面从内存中被卸载时将调用Page_Unload事件。如果某个控件触发页面以使其被重新加载则将调用Control Event事件。在本系统中, Controller负责接收、截取并处理用户请求、处理各种事件,通过调用Model中的业务逻辑组件来对获取各种数据对象,根据当前状态和业务操作的结果决定向客户呈现的视图,控制aspx页面的显示。Model用来管理应用程序域的行为和数据。在本系统中将业务逻辑、与数据库连接和交互的公共操作封装在单独的类中,用专门的类来处理业务逻辑和数据逻辑,提高了代码的重用性。具体实现方式为:在公用的基本类库中,定义sql类作为数据库操作的基本类。图4-3:数据库操作的基本类sql4.3 页面局部更新设计在ASP.NET AJAX中,服务器端控件ScriptManager和UpdatePanel在服务器端达成一致,截获了Page的Render()方法并在页面上为需要进行异步回送的控件输出了一些专门的JavaScript脚本。然后在客户端,若这些控件通_doPostBack()函数试图引发整页的回送,则上面提到的JavaScript脚本将截获这个调用,并将页面中各个用户输入的控件的值,加上当前的试图状态(ViewState)XMLHttpRequest对象发送服务器。而此时服务器却对此丝毫不知,仍把它当作一次传统的回发,老老实实地引发了一次完整生命周期,并根据回送生成新的页面结构。随后又是在Page的()方法中,ScriptManager和UpdatePanel再次获取了其中的实现过程,把不在UpdatePanel中的内容统统踢出,只发送给客户端震泽更新的部分。最后,客户XMLHttpRequest对象收到了这部分信息,并在不知不觉悄悄地更新了UpatePanel中定义的内容20。A ajax 服务器端的局部异步更新实现如下图:图4-3: ajax服务器端局部更新页面4.4 NBA文字直播后台管理模块分析与设计4.4.1.NBA文字直播后台管理功能分析1)可以添加,删除赛程、设置赛程的详细信息。2)可以修改球员的基本信息以及技术信息。3)可以查看球队的信息,以及修改信息。4)可以进行比赛直播。直播员登陆管理流程图如下:图4-5:登陆管理流程图4.4.2 NBA在线文字直播后台管理功能详细设计(1) 直播员对比赛进行直播的活动图如下: 图4-6:直播活动图(2)直播员对球员信息的修改的活动图如下:图4-7:球员信息修改活动图(4)直播员对赛程信息设置的活动图:图4-8:赛况信息设置的活动图(4)直播员对球队信息修改活动图:图4-9:球队信息修改活动图4.5 NBA文字直播普通用户模块分析与设计1)可以查看球队的信息。2)可以根据日期查询赛程。3)可以浏览今日赛程,昨日赛程以及比分情况。4)可以观看今日直播的比赛。普通用户的NBA文字直播流程图如下:图4-10:普通用户的NBA文字直播流程图4.6 VIP会客室模块分析与设计1)可以浏览问题,以及对于问题分类的浏览。2)可以提交问题。3)对于VIP客户可以回复问题。4)对于VIP客户可以删除合法的问题。VIP会客室的活动流程图如下:图4-11:VIP会客室的活动流程4.7 本章小结 本章主要介绍系统的详细设计,包括功能模块划分,以及系统的总体框架,异步局部更新程序的流程图。以及各功能模块的流程图。第五章 系统测试与运行结果5.1NBA在线文字直播后台管理模块测试与运行结果5.1.1赛程管理测试与运行结果测试用例描述:因为赛程是预先定下来,所以可以录入未来几天内的赛程,方便用户预先查看。但是比赛的具体时间一般不能提前几天确定,所以应该在赛况设置中设置比赛时间,然后赛况设置中,首发的球员已经确定后,在直播前要确定。 a赛程添加:一般管理员一次都会录入大量的赛程,在赛程添加界面中,输入主队,客队,以及比赛的日期,以及比赛的类型(常规赛,季后赛,总决赛)然后添加。测试添加成功与否。以下是赛程添加界面:图5-1:赛程添加界面b 测试赛程设置:可以重新设定赛程的类型,设定比赛具体时间,以及比赛双方的首发球员。以下是赛况设置的界面:图5-2:赛况设置界面5.1.2球员管理测试与运行结果球员管理代表性用例测试描述:输入球员所在的球队,选择球员然看查看,并修改。若需要修改技术信息,则点击修改技术信息,出现球员技术信息了。球员信息查看界面如下:图5-3:球员信息查看界面5.1.3球队管理测试与运行结果球队管理代表性用例测试:在球队列表中,选中要查看的球队,进入球队信息界面,点击修改,修改基本信息。然后若要修改球队技术统计,则点击球队技术统计,可以查看修改信息了。球队信息修改界面如下:图5-4:球队信息修改界面5.1.4直播管理测试与运行结果直播员直播管理代表性用例测试描述: 直播员在今日直播列表选中将要直播的赛事,进入直播界面,点击开始直播按钮,出现直播输入栏,每次直播一条信息时,要输入当前的比分,当前赛场的时间,当前的节数,以及直播的文字内容。以下为直播界面:图5-5:直播员直播界
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026国家管网集团高校毕业生招聘考试参考题库(浓缩500题)附参考答案详解(能力提升)
- 2026国网上海市电力公司高校毕业生提前批招聘笔试模拟试题浓缩500题含答案详解
- 2026国网天津市高校毕业生提前批招聘(约450人)笔试模拟试题浓缩500题(含答案详解)
- 2026秋季国家管网集团甘肃公司高校毕业生招聘考试备考试题(浓缩500题)及答案详解【有一套】
- 2026秋季国家管网集团液化天然气接收站管理公司高校毕业生招聘考试参考题库(浓缩500题)及答案详解【考点梳理】
- 2026国网广东省电力校园招聘(提前批)笔试模拟试题浓缩500题及答案详解参考
- 2025国网江苏省电力公司高校毕业生提前批招聘笔试模拟试题浓缩500题含答案详解(培优b卷)
- 2026国网内蒙古电力校园招聘(提前批)笔试模拟试题浓缩500题参考答案详解
- 2026秋季国家管网集团浙江省天然气管网有限公司高校毕业生招聘考试参考题库(浓缩500题)含答案详解(突破训练)
- 2026国网湖北省电力公司高校毕业生提前批招聘笔试模拟试题浓缩500题含答案详解(培优b卷)
- 中国传统美学工艺点翠
- 鸿蒙应用开发教程
- 2024年中国人民财产保险股份有限公司招聘笔试参考题库含答案解析
- 《环境监测奚旦立》课件
- 孕产期药物使用的安全性
- 【数学】山西省太原市2024届高三上学期期中试题(解析版)
- 外研版英语五年级上册 Module 7
- 提高新生儿出生24小时母乳喂养及时率PDCA
- 七年级生物上册动物的主要类群复习课件
- 江苏省徐州市邳州市 2023-2024学年七年级上学期11月期中道德与法治试题
- NUDD新独难异 失效模式预防检查表
评论
0/150
提交评论