大型网站设计服务器端动态主页设计.docx
《大型网站设计服务器端动态主页设计.docx》由会员分享,可在线阅读,更多相关《大型网站设计服务器端动态主页设计.docx(55页珍藏版)》请在三一办公上搜索。
1、第七章 大型网站设计服务器端动态主页设计通过前面各章的介绍,相信大家已经对网页设计已经有一个完整的认识了。对于建立一个个人或者小型网站来说,利用前面给大家介绍的各种技术和工具就已经能够建立一个图文并茂,动态十足的网站了。但是,对于一个大型或者商业网站来说,这些技术只能够提供Web页面的建立和在静态Web页面的基础上进行的简单动态交互,而大型或者商业网站的设计除了会关注网页所呈现给用户的外观,它们更加关注网站的信息发布、信息收集以及信息处理的能力,而这些能力使用前面所介绍的技术是无法获得的,因此计算机技术人员就开发出了各种服务器端动态主页设计技术来完成这些功能。通过本章的学习,应掌握以下内容:A
2、SP.NET的特点及环境搭建ASP.NET的Web Form的应用ASP.NET的数据库编程的应用ASP.NET的会话控制的应用7.1服务器端动态主页设计概述7.1.1 服务器端动态技术的诞生随着Internet应用的深入,Web技术引入的新的商机也逐渐为人们所注意。但是由于当时的Web技术缺乏对交互和信息动态更新的支持,阻碍的Web技术在商业领域的应用。为了突破这种局限,计算机科学家进行了很多种尝试,提出了很多种对Web技术进行信息交互功能扩展的技术,其中最早投入使用并迅速成为主流技术的是“通用网关接口(CGI)”技术,它的全称是Common Gateway Interface,它的出现令W
3、eb技术拥有了强大的交互能力,并且扩展了WWW Server的功能,例如WWW Server和数据库管理系统(DBMS)交互的能力、WWW Server运行服务器进程的能力等。这些扩展加速了Web技术在商业上的应用,并且促进了各种大型网站的诞生。CGI技术在其诞生之初以其强大的功能成为90%大型网站首选的构建技术,但是通过使用人们发现CGI技术存在两个致命的问题。首先,由于CGI技术提供了WWW Server服务器和主机程序的交互能力,也使CGI技术存在比较严重的安全问题,恶意黑客可以通过CGI技术的漏洞控制服务器并造成服务的瘫痪和数据的损失;其次,CGI技术需要为每一次访问建立一个进程来完成
4、对CGI脚本的处理,如果网站的访问量比较大,那么这种处理方式将严重影响网站的性能。由于这些问题的存在,各大软件厂商都纷纷推出新的技术来替代CGI技术,其中比较有影响力的包括PHP、JSP和ASP等等,其中又以MicroSoft公司推出的ASP技术使用最广泛。2000年秋天,MicroSoft公司推出了ASP技术的升级版ASP.NET技术,本章将通过对ASP.NET技术的介绍,帮助同学们了解和掌握一种服务器端编程技术,拥有建立大型网站的能力。1. ASP技术的历史在讲述ASP.NET历史之前,首先来回顾一下ASP。ASP的第一个版本是0.9测试版。它给WEB开发带来一阵暴风,它能够将代码直接嵌入
5、HTML,使得设计WEB页面变得更简单,更强大,并且通过内置的组件能够实现强大功能,最明显的就是ActiveX Data Objects (ADO),它使得建立一个动态页面如小孩子玩游戏一样简单。最终出场的是Active Server Page 1.0,它做为IIS的附属产品免费发送。并且不久就在Windows平台上广泛使用。ASP与ADO的结合使用开发者很容易地在一个数据库中建立和打开一个记录集。这不无疑是它如此快就被大众接受的因素,因为你现在能使用这些脚本建立和打开一个记录集,处理和输出任何数据,以任何顺序,几乎只要你能想到的,它就能完成。 1998年,微软公司又发布了ASP 2.0 。A
6、SP 1.0和ASP 2.0主要区别是外部的组件需要实例化。有了ASP 2.0 和IIS 4.0,我们就有可能建立ASP应用了,而且每个组件就有了自已单独的内存空间。内置的MicroSoft Transaction Server(MTS)也使用制做组件便得简单。微软公司接着开发了Windows 2000操作系统。 这个Windows版本给我们带上了IIS 5.0 以及 ASP 3.0。此次并不是简单对ASP进行补充,核心的不同实际上是把很多的事情交给了COM来做。在windows 2000中,微软结合了MTS与COM核心环境做出了COM+,这就让主机有了一种新的方法来使用组件,同样给主机带来了
7、更多的稳定性,成了一个可以升级的效率高的工作平台。IIS 5.0在表面上似乎没有改什么,但是在接口上动的手术比较大。在内部,它使用COM+ 组件服务来对组件提供一个更好的执行的环境。有了这些,微软公司推出了ASP.NET,ASP.NET又叫ASP.NET,他不是ASP的简单升级,而是MicroSoft推出的新一代Active Server Pages。ASP.NET是微软发展的新的体系结.NET的一部分,其中全新的技术架构会让每个人的编程生活变得更的简单7.1.2 MicroSoft.NET与ASP.NET 2000年秋天,IT业巨头MicroSoft公司发布了其以网络为核心的新的技术框架Mi
8、croSoft.NET技术框架,表明微软将以网络为中心,彻底转换产品研发、发布的方式,改变产品和服务的范围。在MicroSoft.NET技术框架中,ASP.NET技术是其中的一个最主要的组成部分之一,它是ASP的下一代版本,然而ASP.NET又并非从ASP3.0自然演化而来,在许多方面,ASP.NET与ASP有着本质的不同。ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给WEB开发人员更好的灵活性,有效缩短了WEB应用程序的开发周期。ASP.NET与Windo
9、ws 2000 Server/Advanced Server的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境。要了解ASP.NET的真实面目,首先就得了解一下微软.NET战略。1. Microsoft.NET的历史随着网络经济的到来,微软公司希望帮助用户,能够在任何时候、任何地方、利用任何工具都可以获得网络上的信息,并享受网络通信所带来的快乐。.NET战略就是为着实现这样的目标而设立的。微软公开宣布,今后将着重于网络服务和网络资源共享的开发工作,并称,将会为公众提供更加丰富、有用的网络资源与服务。微软新一代平台的正式名称叫做“新一代Windows服务”(N
10、GWS),现在微软已经给这个平台注册了正式的商标MicroSoft.Net。在.Net环境中,微软不仅仅是平台和产品的开发者,并且还将作为架构服务提供商、应用程序提供商,开展全方位的Internet服务。在谈及这个平台中使用的新技术,微软透露,它将在.Net环境中提供更多新产品和一揽子的全套服务。MicroSoft .NET平台的基本思想是:侧重点从连接到互联网的单一网站或设备上,转移到计算机、设备和服务群组上,使其通力合作,提供更广泛更丰富的解决方案。用户将能够控制信息的传送方式、时间和内容。计算机、设备和服务将能够相辅相成,从而提供丰富的服务,而不是像孤岛那样,由用户提供唯一的集成。企业可
11、以提供一种方式,允许用户将它们的产品和服务无缝地嵌入自己的电子构架中。这种思路将扩展二十世纪八十年代首先由PC赋予的个人权限。MicroSoft .NET将开创互联网的新局面,基于HTML的显示信息将通过可编程的基于XML的信息得到增强。XML是经“万维网联盟”定义的受到广泛支持的行业标准,Web浏览器标准也是由该组织创建的。微软公司为开发它投入了大量精力,但它并不是MicroSoft的专有技术。XML提供了一种从数据的演示视图分离出实际数据的方式。这是新一代互联网的关键,提供了开启信息的方式,以便对信息进行组织、编程和编辑;可以更有效地将数据分布到不同的数字设备;允许各站点进行合作,提供一组
12、可以相互作用的“Web服务”。MicroSoft .NET综述MicroSoft .NET平台包括用于创建和操作新一代服务的.NET基础结构和工具;可以启用大量客户机的.NET User Experience;用于建立新一代高度分布式的数以百万计的.NET积木式组件服务;以及用于启用新一代智能互联网设备的.NET设备软件。MicroSoft .NET产品和服务包括Windows.NET,连同建立积木式服务的核心集成套件;MSNTM .NET;个人订购服务;Office.NET;Visual Studio .NET;以及用于.NET的bCentralTM。.Net环境中的突破性改进在于:1使用统
13、一的Internet标准(如XML)将不同的系统对接;2这是Internet上首个大规模的高度分布式应用服务架构;3使用了一个名为“联盟”的管理程序,这个程序能全面管理平台中运行的服务程序,并且为它们提供强大的安全保护后台;.NET平台包括如下组件:1用户数据访问技术。其中包括一个新的基于XML的、以浏览器为组件的混合信息 架构,叫做“通用画板”;2基于Windows DNA 2000的构建和开发工具;3一系列模块化的服务,其中包括认证、信息传递、存储、搜索和软件送递功能;4一系列驱动客户设备的软件;2. 什么是ASP.NET?本节将详细介绍称为Active Server Pages+ (AS
14、P.NET)的网络应用程序可编程模板。建立在Microsoft .NET框架 上网络应用程序共享一个通用应用程序模板。在这个模型中,网络应用程序是一套起源于基URL 的URLs。因此它包含用于生成在浏览器中观看的网页的网络应用程序和网络服务。如同名字所述,ASP.NET是由活动服务器页面(ASP)发展而来。ASP.NET利用common language runtime 和服务框架网络应用程序提供了一个可靠的、自动化的、可扩展的主机环境。ASP.NET也受益于common language runtime 集成模板,简化了应用程序的配制。另外,它提供简化应用程序开发的服务(如状态管理服务)以及
15、高水平的编程模板(如ASP.NET Web Forms和ASP.NET Web Services)。ASP.NET的核心是HTTP运行语言,一个高性能的用于处理基于低级结构的HTTP请求的运行语言,而基于的结构与MicroSoft Internet Information Services (IIS)所提供的ISAPI结构相似。HTTP 运行语言是在象服务器上的IIS或客户机上的IE之类的unmanaged 主机过程中运行的受控代码。HTTP runtime负责处理引入的所有HTTP请求,并对每个请求应用程序的URL进行解析,然后把请求分配到应用程序以进行进一步的处理。HTTP 运行语言是多线
16、程的,并异步处理请求,因此劣质的应用程序代码阻碍不了它对新请求的处理。而且HTTP 运行语言假定失败必会发生,因此它被控制为尽最大力量自动地从访问冲突、内存泄漏、死锁等事故中恢复过来。除非是硬件故障,运行语言的目标是100%的可靠性。网络基本上是一个无状态模型,并且在HTTP请求间没有联系,这使得编写网络应用程序很困难,因为应用程序通常需要维护跨多个请求的状态。ASP.NET增强了由ASP引入的状态管理服务,以便为网络应用程序提供三种类型的状态:应用程序、会话、用户。就象在ASP中一样,应用程序状态特定于一个应用程序实例,并且不会持久。会话状态是特定于一个用户与应用程序间的会话的。与ASP会话
17、状态不同,ASP.NET会话状态储存在一个独立的过程中,并且可把它配制成可以储存到一个独立的机器上。这使得会话状态当应用程序在网络群(Web farm)扩展时非常有用。用户状态类似于会话状态,但通常它不会超时,并且是永久性的。因此,用户状态对储存用户参数和其它个性化的信息是有用的。所有状态管理服务都被实现为HTTP模块,因此它们容易增加到应用程序管道中,或从中删除。如果除了由ASP.NET提供的服务外,还需要额外的状态管理服务,那么可由第三方的模块提供。ASP.NET同样提供高速缓冲服务,以改善性能。输出缓冲可完全节省网页翻译,段缓冲储存部分的网页。由于提供了相应的类,所以只要需要,应用程序、
18、HTTP模块以及请求处理程序可以在高速缓存中储存任意数量的对象。7.1.3 ASP.NET的组成ASP.NET应用程序可编程模板主要是有两个高级可编程模块构成,下面就简单介绍一下这两个高级可编程模块,它们分别是:ASP.NET网络表单(Web Form)和ASP.NET网络服务(Web Service)。1. ASP.NET网络表单网络表单把基于Visual Basic的表单的高生产性的优点带到了网络应用程序的开发中来。网络表单支持传统的将HTML内容与角本代码混合的ASP语法,但是它提出了一种将应用程序代码和用户接口内容分离的更加结构化的方法。引入的网络表单控件用于为封装通用用户接口元素提供
19、了一种机制。这些新的特点使得开发工具在支持VB小应用程序的同时,也支持设计时模块,使得WUSIWYG工具支持网页布局。网络表单控件负责生成用户接口,典型情况是在HTML表单中。ASP.NET是提供了一套映射传统的HTML用户接口小部件(包括列表框,文本框和按钮)的网络表单控件和一套附加的更加复杂的网络控件(如日历和广告转板)。这些控件的一个重要特点是,它们可以被编写以适应客户端的能力;同一网页把大范围的客户端平台和表单因素作为目标。换句话说,网络表单控件能“嗅”到正在查找表单的客户,然后返回合适的用户经验可能是适合低级浏览器的HTML3.2或是适于IE5.0的动态HTML。考虑到网络是一种无状
20、态的联接模型,网络应用程序开发人员所面临的一个很复杂的问题是,他们要对用户与基于网络的接口的交互作用作出反应。网络利用ASP.NET的体系架构提供了一套丰富的服务,以帮助开发人员建立交互式网页。这些服务的净作用是使基于组件的、事件驱动的可编程模块,对开发人员来说,非常象客户端的表单程序设计。用户与网页交互作用的状态管理的复杂性被ASP.NET 网络 表单和网络表单控件隐藏起来了。对开发人员来说,提供的丰富数据绑定服务使得显示通过数据访问服务得到的数据变得非常容易。代码与内容的分离使ASP.NET网页能动态地编译到受控类中,用以提高性能。每个引入的HTTP请求都被传递到一个新的网页实例,因此开发
21、人员不需要关心代码中的线程安全性。2. ASP.NET网络服务ASP.NET 网络 服务体系架构为用ASP.NET建立网络 服务提供了一高级可编程模板。虽然建立网络服务并不需要使用网络 服务平台,但是它提供许多的优点将简化开发过程,并且它使用的编程模型对用ASP或VB工作的开发人员来说是很熟悉的。使用这个可编程模型,开发人员不需要理解HTTP、SOAP或其它任何网络服务规范。开发人员用ASP.NET生成一个扩展名为.asmx的文件,并把此文件配制为网络应用程序的一部分,就建立起了一个网络 服务。ASMX文件或者包含对在其它地方定义的受控类的引用,或者包含这个类的定义。这个类是由ASP.NET提
22、供的WebService类所派生。公有的类方法在标记上WebMethod属性后,就会成为网络服务方法,把HTTP请求发送到ASMX文件中的URL后,这些方法就会被调用。你不必手工为你的网络服务建立一个契约。当被调用者请求时,ASP.NET检查类的元数据,以自动生成SCL文件。客户可通过SOAP,HTTP GET 和HTTP POST提交请求。对方法和参数进行编码的约定是:对HTTP GET,将被编码为查询字符串;对HTTP POST,将被编码为表单数据。HTTP GET 和HTTP POST 的机制不如SOAP有力,但是它们使得客户在访问网络服务时不必支持SOAP。ASP.NET 网络服务模型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大型 网站 设计 服务器端 动态 主页
链接地址:https://www.31ppt.com/p-2019332.html