版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第9章 电子商务系统开发工具及应用实例前面我们系统地讨论了网络商务网站的设计与开发问题,一旦有了一个良好的分析和设计方案后,企业商务网站的实现就成了一项比较简单的工作。目前计算机软件技术的发展已经为企业商务网站创建提供了极为方便的框架,而且大多数是“所见即所得”(what you see what you get,简称wysiwyg类型的开发工具。利用这些工具,企业可以迅速地建立起自己的网络商务处理系统,实现网络经营和营销的设想。本章将介绍实现这些软件工具及其一些典型应用实例。目前在internet上,最常用的网络商务网站的开发工具就是html,coi,java以及各种各样的网站创立模板和编辑
2、器。本章将分三个部分来讨论企业商务网站的创建,首先是创建的程序语言和工具介绍,其次是各种各样的创建工具简介,第三是用asp的实际例程表现构建一个电子商务网站的实际操作过程。9.1 html概述9.1.1 html概述html是internet上的主要程序语言,也是企业创造商务网站的主要工具。企业的网络营销策略和商务网站设计中的各种构想都要通过html程序来实现。在internet中,用户在浏览器中所看到的所有信息实际上都是一组html代码和程序定好的文字文件和图像文件内容。这些html程序被称之为html文件,其命名规则同其他程序语言完全一致,即文件名html。html程序可以在网络浏览器下用
3、各种各样的编辑器和编程工具完成。html代码的编程工作也非常简单,它不需要用户去死记语句形式,而只是用一些“所见即所得”类型的工具直接定义出程序代码。9.1.2 html标记的语句在html文档中使用标记来指导浏览器如何在屏幕上显示信息。html中有两个基本的标记类型,即独立标记和成对标记,它们可以激活在测览器中的相关格式。成对标记类型由开始标记部分和结束标记部分组成,标记的两个部分都是需要的,两个部分的名字相同,但后一个标记前有一个“/”字符。下面例子说明了如何使用html成对标记显示文档的标题:<title> 中间写标题 </title>注意,成对标记将作为标题使用
4、的文本包围起来。在成对标记的所有例子中,要处理的信息都是处于开始标记和结束标记之间的。独立标记只有一个,并作为起始标记使用。在遇到其他单一标记或者成对标记之前,独立标记中的标记激活浏览器中的有关格式,独立标记的一个例子是分行标记(br),可以使用这个标记迫使在屏幕上产生新的一行文本每一个标记都由尖括号“”和“”封装。下面给出如何书写这两种标记类型的例子:独立标记<tagname>成对标记<tagname>/tagname注意成对标记中第二个标记中含有一个“/”字符。它起到的是浏览结束这个标记的作用。利用标记可以对文档中的对象进行一定的处理。例如,要使文本的开始部分为黑体
5、并且其余部分为正常字体,可以使用以下标记:b this is bold text /b while this is nothtml中许多标记可以带选项。只有单一标记和成对标记的起始标记才可以使用这些选项。这些标记的完整句法为:<tagname option1 option2 option3 option x>9.1.3 基本文档的创建有三个标记可以用来创建html文档的基本结构,它们是:html> 中间存放完整的html源程序文档</html>head 中间写网站主页标题/headbody中间写html文档的主体 /body在实际书写ascii文本格式的html文
6、件时,上述描述的基本文档显示如下:html>head网站主页标题/headbody网站某个页面反映的内容程序(即实现脚本设计的html程序)/body/html无论html文件的实际布局如何,浏览器都会按标记格式显示文档内容。在上面的例子中,元素嵌套或编排方式为一种好的编程结构,可使读者易于阅读,但不会对浏览器产生任何影响。9.2 xml语言9.2.1 xml的产生xml是sgml(standard generalized markup language)的优化子集。sgml是iso(国际标准化组织)在1986年推出的一个用来创建标记语言的语言标准,它源自ibm在1969年开发的gml(
7、generalized markup language)。sgml为出版业提供了一种将数据内容与显示分离开来的数据表示方法,使得数据独立于机器平台和处理程序。sgml的确在许多大型出版系统中很有用,但是它的复杂性使其难以直接应用到internet上,这也是它没有被广泛接受的主要原因。另一方面,作为一个用sgml定义标记语言的典型例子,html是专为web上发布超文本而设计的标记语言。正是html使web迅速在世界范围内扩展开来。但是,html本质上主要关注web创览器如何在页面上安排文本、图像和按钮等,过多地考虑外观使其缺乏对结构化数据的表示能力。另外,html中有限的标记不能满足很多web应
8、用的需要,如基于web的大型出版系统和新一代的电子商务,而为各种应用需要不断地往html中增加标记显然不是最终的解决方法,究其原因是html缺乏可扩展性、解决方案应该是简化sgml使之能应用到web上。在此背景下。作为web上使用的 的sqml的一个优化子集,xml应运而生。9.2.2 xml语法简介同sgml类似,xml是一种元标记语言,使用者可按需创建新的标记。xml的可扩展性就在于此。带标记的元素是xml文档的构造块,这种元素可以有若干个属性,并可以包含零个或多个子元素。这些子元素可以是文本数据,也可以是带标记的元素。xml文档示例如下:<?xml version="1.
9、0" encode="utf-r?"><!doctype hatlist system "http:/www.salehat.com/hatlist.dtd"><hat list>hat_id="hat1" style=”sandal">customize xmllink"extended" inline="true" show="replace>locator xmllink”locator” href"&quo
10、t;>在中国定制</locator>locator xmllink"locator" href"http:/wwwproducehat.com">在美国定制</locator</hat></hat list>xml文档可以在它的文档类型声明星声明某个dtd(document type definition.文档类型定义)。如上述xml文档的dtd由文件hat listdtd定义。dtd是关于xml文档中出现的标记和元素结构的语法约束,它可用来验证一个xml文档。dtd是一系列关于元素类型、属性、实体和
11、符号的定义。它定义了文档所需的标记,比如可以在文档里使用的元素类型,这些元素之间可能的联系等。dtd示例如下:<!element hatlist(hat)*>!element hat(color,size,customize)>!element color (#pcdata)>!element size(pcdata)>!element customize (pcdata/locator)*!element locator any<!atlist hat_id id reouiredstyle idref required><!atlist cu
12、stomize xml-link cdata fixed “extended”inline (true/false) “true”show (embed/replac/new) “new” <!atlist locator xml-link cdata fixed “locator”href cdata required >9.2.3 xml的特点和特性概述1. xml特性 特殊的域标记语言:通过使用xml标记,某个领域内的每个人可以交流注释,数据和信息,而不必担心接收端是否有解读的能力。而且每个领域内的标记不互相干扰。 通用的数据格式:xml本身是一种纯ascii文件,与有格式的
13、文件相比较,它的抗破坏性是很强的。即使部分受损,其余部分仍然可读。而且xml是一种自描述语言,即使不熟悉xml语言,也能理解其中的内容含义,可以使得文件的长期保存成为可能。 数据交换:当今世界上,平台应用五花八门,想在不同的平台交换数据十分困难。因为xml易理解,非专有,易读写,所以对于在不同的应用程序之间的数据交换来讲,xml是一种极好的格式。 结构化数据:xml不仅允许指定文档中的词汇,还允许指定元素之间的关系。这种结构化的方法可以有效验证数据有效性一致性。 xml语法严格:html的语法要求并不严格,浏览器可以显示有文法错误的html文件。但xml就不同了,它不但要求标记配对、嵌套,而且
14、还要求严格遵守dtd的规定。对于任何一个xml文件,处理指示都是必须的。而如果一个html文件没有开始标记html,在大多数浏览器中仍能通过。因为浏览器通常具备一个内置的修改功能去猜测html文件中漏掉了什么,并试图修改这个有误的文件。xml则使用分析器,无论是内嵌于浏览器还是作为独立的处理器,绝对不允许修改。就象编译一个程序一样,一个xml文件或者被判别为“正确”而被接受,或者被判别为“错误”不予运行。这种严格的语法可以规范开发,降低浏览器开发的复杂度。2xml值得强调的是以下优点(1)可扩展性xml是设计标记语言的元语言,而不是html这样只有一个固定标记集的特定的标记语言。正如java让
15、使用者声明他们自己的类,xml让使用者创建和使用他们自己的标记而不是html的有限词汇表。可扩展性是至关重要的,企业可以用xml为电子商务和供应链集成等应用定义自己的标记语言,甚至特定的行业一起来定义该领域的特殊标记语言,作为该领域信息共享与数据交换的基础。(2)灵活性html很难发展,因为它是格式、超文本和图形用户界面语义的混合,要同时发展这些混合在一起的功能是很困难的。而xml提供了一种结构化的数据表示方式使得用户界面分离于结构化数据。在xml中,可以使用样式表,如xsl(extensible stylesheet language,可扩展样式表语言)和css2(cascading sty
16、le sheets level2,层叠样式表第2进阶)将数据呈现到浏览器中。另外,xml文档之间的超链接(hyper link)功能由独立的xlink(extensible linking language ,可扩展链接语言)来支持。所有这些方面都可以互相独立地改进并发展。所以,web用户所追求的许多先进功能在xml环境下更容易实现。(3)自描述性xml文档通信包含一个文档类型声明,因而xml文档是自描述的。不仅人能读懂xml文档,计算机也能处理。xml文档中的数据可以被任何能够对xml数据进行解析的应用所提取、分析、处理,并以所需格式显示。xml表示数据的方式真正做到了独立于应用系统,并且这
17、些数据能重用。所以xml适合开放的信息管理。因为它的自描述性,文档里的数据可以由支持xml的xmlaware应用来创建、查询和更新,跟处理传统的关系型数据库、面向对象数据库里的数据类似。xml甚至还能用来表示那些以前不被看作文档但是对传统构数据库来说又过于复杂而难以处理的数据。所以,xml文挡被看作是文档的数据库化和数据的文档化。(4)简明通用性除上述特性以外,xml具有简明性。它的复杂性大约只有sgml的20%,但功能大约是sgml的80。同完整的sgml相比,xml简单、易学、易用并易实现。另外,xml的诞生也吸收了人们多年来在web上使用html的经验,正如html开辟了一种计算机用户能
18、创建internet文档的途径,xml将成为人们读和写的世界语。值得注意的是,xml采用unicode字符编码系统,从而支持世界上几乎所有的主要语言,并且不同语言的文本可从在同一文档中混合使用,支持xml的软件能处理所有这些语言的任何组合。因此,xml使得信息交换可以跨越民族与文化边界。所有这一切将使xml成为数据表示的一个开发标准,这种数据表示独立于机器平台、提供商、和编程语言。它将为网络计算注入新的活力,并为信息技术带来新的机遇。9.2.4 xml的用途和应用开发技术简介虽然人们对xml的某些技术标准尚有争议,但是人们已普遍认识到xml的作用及用途。作为sgml的一个简化子集,xml在sg
19、ml的应用领域中依然有它的用武之地,包括文档和信息管理、大型出版系统等。除此之外,xml在很多方面有着重要用途,其中包括数据交换和web应用。1数据交换数据交换是xml最重要的用途之一。xml使得不同计算机应用系统之间交换数据变得容易起来,这是因为它的可扩展特性和文档中使用无数据。xml尤其在下列领域有重要应用。(l)edi(电子数据交换)。edi被用来在异构系统间进行数据交换而支持事务处理。20多年来,edi着重于合作伙伴之间的事务处理标准化,它提供一系列标准的消息和格式(如 ansix.和 edipact),但是这些标准缺乏灵活性和可扩展性。使用xml程序能够理解在交换数据中所表示的商务数
20、据及概念,根据明确的商务规则进行数据处理并给出适当的响应。所以xml能够和现有别的edi系统相结合,并扩展现有的edi应用。(2)agent(智能体)。构造一个agent所面临的挑战之一是如何理解接收到的数据。好的agent能智能地解释这些数据,然后作出相应的反应。倘若送到agent的是xml结构化的数据,agent就很容易理解这些数据的含义及与它已有知识的关系及相关技术必将促进agent及移动agent技术的发展。(3)软件设计元素的交换。xml可以用来描述软件设计中有关的设计元素,如对象模型,甚至能描述最终设计出来的软件。这些基于xml的设计元素可以借助web在开发组内进行交换,在不同的开
21、发工具之间交换。由ibm、unisys;及其他合作伙伴提出的xmi(xml metadate interchange)正是朝该方向努力的结果,xmi为存储和共享基于对象的程序设计信息建立了一个标准。使合作应用开发可以在internet上进行,即使开发组成员使用不同的建模工具。另外。xml及相关技术使得软件的分发及更新在web上更容易实现。microsoft及合作伙伴提出的osd(open software description)正是xml的一个应用,它定义了一个标记集用来描述软件包及其与各种客户平台的依赖关系。2web应用xml文档无疑将成为web资源的重要组成部分,而且基于xml的文档资源
22、使web搜索引擎的智能化变得容易起来。除此之外,xml能够用来建立html所不能达到的多层web应用。xml在web应用中的用途如下:(l)集成不同数据源。xml的特性使得它能用来描述包含在不同应用中的数据。,从web页面到数据库中的记录,web应用的中间层服务程序可以容易地将这些用xml表示的数据组合起来,直接传送给客户或报交其他服务程序进一步处理。(2)本地计算。基于xml的数据被传送到客户后,客户端应用可以对这些数据进行解析和操纵,完成应用系统所需的功能。这些本地计算不需要与服务器的额外通信。这种对本地计算的支持有利于在服务器和客户之间合理分配计算的比例。(3)数据的多种显示。xml与h
23、tml具有互补性,html描述数据的外观,而xml描述数据本身。用xml定义的数据能以不同的外观显示。一旦这些数据到达客户端,它们的显示方式可以由客户配置动态确定。css和xsl提供了描述数据所需显示的语言机制。(4)支持web应用的工操作和集成。作为xml的早期应用之一,widl(web interface definition language)是一个用来定义支持web资源或企业应用接口的语言标准。通过用widl定义的接口,web应用之间可以自动存取web资源及企业应用。9.6.3 xml应用开发技术概述开发xml应用通常涉及以下四个方面:1构造xml标记语言xml允许任何人创建他自己的标
24、记语言,但是设计一个好的标记语言并非易事。首先通过dtd来设计标记,其次还要用自然语言解释这些标记的含义,以使程序员能正确处理xml文档中的元素。然而,在很多场合。用xml1.0中规定的dtd来定义标记显得有些不够,另外,人们也希望用xml文档来定义标记结构及约束。为此,w3c的xml工作组正在设计一个适合于xml的xml schema language,以使用xml文档来定义增强的dtd。由microsoft及其合作伙伴提交的xmldata正是这种语言的一个典型代表。xmldata既能用于像xml这样严格的语法种类,也能适用于像关系数据库那样需要指示概念和概念问关系的领域。这样,复训已文档类
25、型可以用xml本身来描述,而不仅仅是dtd语法。另外,xmldata schemas为交叠在语法、数据库和概念schemas之中的想法提供一个公用词汇表。2生成xml文挡生成xml文档的数据来源多种多样,可能来自数据库,也可能来自xml文档,也可能是web上的其他资源。xmlql、sqlx、xql等查询语言及相关技术可用来生成xml文档。xmlql能表达那些用来从xml文档里抽取数据的查询,也能表达转换。例如在不同的dtd之间映射xml数据、从不同的数据源中集成xml数据等。sqlx(sql embedded in xml、嵌入xml中的结构化查询语言)是一个嵌入xml中的sql语言,它为基于
26、dom的应用程序提供了一个存取关系数据库的简便方法。sqlx接受一个用xml描述的查询,并把它翻译成一个jdbc调用序列,查询结果被转换为dom结构并返回。xql(xml query language,xml查询语言)是一个通用的xml查询语言,它提供了对xsl模式语言的自然扩展,如增加过滤器、节点索引等功能,它适用于查询和寻址等。3解释xml文裆解释xml文档可以通过使用dom或sax(simple api for xml)应用编程接口来实现。dom是w3c为xml文档和html文档制定的一个独立于平台和语言的编程接口标准,使得程序和脚本能以标准的方式存取与更新文档的内容、结构和样式。而sa
27、x是xmldev邮件列表组推出的一个xml的java应用编程接口标准,java应用程序可以使用支持sax的xml解析器来接受解析事件。使用xml比使用dom要节省很多内存开销,但是dom提供了更丰富的编程接口。4显示xml文档显示xml文档有多种途径。web上的xml文档资源可以直接显示在支持文档的浏览器中,或者使用xsl式表将xml文档转换为浏览器能处理的东西,如html文档。也可以使用程序对xml文档进行操作,再将结果按任何一种用户要求的方式显示。另外,xml技术也支持为同一个xml文档生成在多种输出设备上的输出。9.3 公共网关接口概述公共网关接口(common gateway inte
28、rface, cgi)在商务网站的开发中起着重要的作用。cgi是用来在用户浏览器和网络服务器之间传递信息的一系列统一命名的变量和方法操作管理程序。cgi的开发工作最早起源于美国伊利诺斯大学的ncsa。为了能够在浏览器中访问ncsa httpd 服务器上的动态数据,需要一个中间程序,于是开发出了cgi。cgi一经提出立刻受到了普遍地欢迎。近来被广泛应用于各类web开发工具和商务网站的创建中。目前在企业商务网站的创建过程中,cgi程序常常被用于对html表单和数据库的操作。例如用cgi程序对数据进行搜索、修改或添加记录等等。9.3.1 cgi编程语言简介公共网关接口是用于html服务器和外部应用程
29、序之间的一个标准。不对静态的html文档进行检索,url可以对含有某个程序或脚本的文件进行标识,这个程序或者脚本在用户选用url指定的链接时得到执行。例子之一是页面计数器程序,每检索一次文件,该计数器就累加1。在internet上,人们经常可以看到“在该站点上你的访问编号为xxx,xxx”。当你选择这个链接并将这个具体页面下载到浏览器时,cgi程序运行并查看存储在cgi程序文件中的某个变量和编号值,使编号加1,然后在html文件内显示这个编号。使用外部应用程序的例子可以分两个步骤进行说明,即在html文档中选择和完成一个表单。用户单击提交(submit)按钮后,输入的数据被传递到cgi程序,接
30、着cgi程序对数据进行一定的处理。启动cgi程序的基本方法如下:(l)用户在html页面中单击某个链接。(2)浏览器请求服务器运行cgi程序。(3)如果用户具有适当权限,服务器运行cgi程序。(4)cgi程序的结果返回到浏览器。(5)浏览器显示输出结果。在创建cgi程序时,需要使用某种编程语言。早期cgi所采用的编程语言多为在unix操作系统下的perl(practical extension and reporting language),而目前最常用的是在windows操作系统下的java语言。在介绍java语言之前,这里暂时采用perl作为例子来说明cgi的编程语言。在选择cgi编程语言
31、时要注意:http服务器中的操作系统应能支持这种语言;这种语言功能应足够强大,这样才可以编写cgi程序,完成预定的任务。9.3.2 cgi编程语言及程序介绍下面是使用perl编写的一个很简单的传送数据的程序:#!/set/local/bin/perl# file:firstscript.perl.cgiprint“content-type:text/htmlnn”;# because this comes back as html we put into a format# that is understandable, including a titleprint“htmlheadtltle
32、first script response/title/headn”# and now the body of the gtml page we will see returnedprint“bodyhimy first scripot/hihrcongratulations!you programmed your first cgi script! /body/htmln”;该程序的目的是让cgi程序在程序启动后向创览器发回一个消息。为了对代码进行解释下面是对用perl编写的程序的一些说明。(1)perl脚本的第一行必须指定在服务器上何处可以找到perl解释器。(2)以开头的行是注释行,不被
33、perl解释器进行任何操作。(3)print命令用于输出文本(4)文本串用引号包围。(5)需要的新行(new line)用“n”指明。(6)perl的所有语句必须以分号结束。该例说明了cgi程序使用服务器把消息回传给用户浏览器的方法。为了调用这个cgi程序,调用cgi程序的超级链接必须放置在html文件中,并且用户必须单击这个超级链接。最好将这个cgi程序放在服务器上,这样用户可能激活指向程序的超级链接。要把cgi程序放在服务器上可以有若干种方法。除非服务器连到lan中并且能把cgi程序文件拷贝到合适的目录下,否则使用文件传输协议(ftp)传输cgi程序是最常用的方法。cgi文件一般存储在/
34、user/cgi-bin目录中。1启动cgi程序前面部分已提到启动cgi程序以及其他程序的最简单的方法,是在调用cgi程序的gtml文档中放入一个超链。如果使用表单给cgi程序传递数据(如使用本章开发的表单),那么当单击“提交(submit)”按钮后form action属性调用这个cgi程序。使用为创建主页而开发的模板文件创建一个页面,用这个页面测试cgi程序,为第一个cgi程序创建的超级链接如下,该超级接链被嵌入在html文档中:invoke the simplie peri script:ahref=“user/cgi-bin/2理解变量调用cgi程序时,hgml服务器(web服务器)要
35、建立一些环境变量,通过这些环境变量,数据可被传递到程序。并非所有的环境变量都用于所有的浏览器、服务器和站点。一些程序(包括cgi程序)查找这些环境变量以确定它们的值,包括用户输入到表单中的数据。有时,如果变量不在某个环境中,则会使用默认值,但在其他情况下,除非设置变量为环境变量,否则程序会崩溃。一旦熟悉了环境变量并且知道这些变量给服务器传递何种信息,就可以创建perl程序,使用包含在这些环境变量中的值。3使用perl编写显示环境变量的程序介绍。为了提高编写perl程序的能力,以及说明环境变量如何传递数据,我们将创建第二个perl程序,使得服务器显示环境变量中存储的值,这个程序的代码如下:#!/
36、user/local/bin/perl# filename:printvars.perl.cgiprint “content-type:text/plainnn”;#display the cgi environment variablesprint qq (auth-type=$env“auth-type”n);print qq(content-length=$env“content=length”n);print qq(content-type=$env“content-type”n);print qq(content-internet=$env“gateway-nterface”n)pr
37、int qq(http-accept=$env“http-accept”n);print qq(http-referer=$env“http-referer”n);print qq(http-user-agent=$env“http-user-agent”n);print qq(path-info=$env“path-info”n);print qq(path-translated=$env“path-translated”n);print qq(query-string=$env“remote-addr”n);print qq(remote-addr=$env“remote-addr”n);
38、print qq(remote-host=$env“remote-host”n);print qq(request-method=$env“request-nethod”n);print qq(scrirp-name=$env“script-name”n);print qq(server-name=$env“server-name”n);print qq(server-port=$env“server-port”n);print qq(server-protocol=$evn“server-protocol”n);print qq(server-software=$env“server-sof
39、tware”n);为了启动这个cgi程序,要创建一个超链,并将其放置在cgitemp.html文件显示的html页面“cgi test page”上。使用html表单从文本域、复选框、单选按钮和文本框中输入数据意味着使用标准输入(stdin)给http服务器发送信息。默认情况下,用户使用标准输入给程序输入数据,或者在intranet浏览器终端使用标准输入。一旦输入程序请示的信息,该信息便通过标准输入传递给服务器。标准输入是将输入设备连到运行程序的一个数据通道。intranet上的http服务器变是一个运行着的程序。它获取用户输入的数据并将其发送给cgi程序。cgi程序的结果通过标准输出返回。标
40、准输出(stdout)是输出流到达用户计算机的标准位置。http服务器不处理传递到cgi程序的自变量,自变量原封不动地从浏览器传递到服务器。9.4 asp技术概述asp是active server pages(动态服务主页)的简称,它代表了web页技术从静态内容链接到动态生成文档的重要发燕尾服历程,它代表着web技术一个新的发展方向。asp技术的精髓就是“动态”,这也是它与html页面的本质区别,这个“动态”和前面介绍的动态html的动态是有根本区别的,前者是从页面传输、页面生成真到页面内容的完全动态化,而后者仅是页面内容的动态效果。下面我们将对这个技术作一简要介绍。9.4.1 与静态联接的比
41、较web最初建立在静态内容联接上,直到今天许多站点仍保持静态:这就是说,为了改变从web服务器送到浏览器的html文档,你不得不手工编辑html页面。在静态模式下,浏览器使用http(超文本传输协议)向web服务器请求html文件。服务器受到请求并传送一个已设计好的静态html的文档给浏览器,然后浏览器以一定格式显示这个页面。若要更新这些表态页面的内容,必须手动更新其html的文件数据。虽然html通过javascript等控制页面元素具有一定的动态特性,但它仅是客户端静态页面内容的改善,只能增加一些页面修饰方面的动态效果,脚本所具有的交互能力十分有限。通过网关接口例如cgi(公共网关接口)、
42、iisapi(微软iis的编程接口)以及其他接口可以用来在html页面中加入动态的内容。这种模式提供了一定程度的动态特性,但它们不是和html集成在一起的。事实上,它们的设计过程与html文件完全不同。而且这类程序很难创建和修改。使用asp的不同之处是制作者可以直接在文件中插入可执行脚本代码,根据访问者的具体情况动态地生成页面。页面开发和脚本开发变成相同的过程,使网页制作者直接注意力集中到web网页的外观和感觉。asp完全与html文件集成易于创建,无需手工编译或连接面向对象,可通过activex服务端构件扩展功能。asp的好处在于,使得web脚本开发应用是很容易的。装备了合适的脚本引擎,可以
43、使用任何脚本语言。asp提供了vbscript和jscript脚本引擎。使用activex服务端构件(以前称automationservers自动化服务器),可以使用asp结合数据库操作脚本等高级功能来处理数据和动态产生有用信息。9.4.2 asp的主要特点active server pages (动态服务器主页,简称asp),内含于internet information server (iis)当中,提供一个服务器端(server-side)的scripting环境,产生和执行动态、交互式、高效率的站点服务器的应用程序。当用户对一个asp文档发出请求时,服务器会自动将active serv
44、er pages的程序码,解释为标准 html格式的网页内容,在送到用户端的浏览器上显示出来。用户端只要使用常规可执行html码的浏览器,即可浏览active server pages所设计的主页内容。当然这就意味着没有asp服务器,就无法正确浏览一个asp文档。active server pages的特点是: 需编译:容易产生,无需编译或链接即可执行解释,集成于html中; 使用常规文本编辑器,如windows的记事本,即可设计; 与浏览器无关(browser independence):用户端只要使用常规的可执行html代码的浏览器,即可浏览active server pages所设计的主
45、观内容,script语言(vbscript, jscript)是在站点服务器(server端)执行,用户不需要执行这些script语言; 面向对象(object-orient); 可通过activex server components(activex服务器组件)来扩充功能。activex server component,可使用visual basic,java,visual c+,cobol等语言来实现; active server pages 与任何activex scripting 语言兼容。除了可使用vbscript或jscript语言来设计,并可通过plug-in的方式,使用由第三
46、方所提供的其他譬如rexx;perl,tcl等scripting语言。script引擎是处理script的com(component object model)对象; active server pages 的源程序代码不会传到用户的浏览器,因此可以保证辛辛苦苦写出来的源程序不会外泻。传到用户浏览器的是active server pages执行的结果的常规html码; 使用服务器端script产生客户端script,可以使用asp程序码,在站点服务器执行script语言(vbscript或jscript),来产生或更改在客户端执行的script语言。9.4.3 asp语法介绍及简单示例acti
47、ve server pages ( asp)制作成asp扩展名的文件,一个.asp文件是一个文本文件,一般包括三部分:l html标记(tags);l vbscript或jscript语言的程序码;l asp语法。下面介绍asp语法。asp实质上并不是一个script语言,而是提供一个可以集成script语言(vbscript或jscript)到html主页的环境。html标记(tags)使用"<>"将html程序码包含起来;而asp使用"%"将asp的script程序码包含起来。当用户请求该asp文档时,服务器将其中的程序码翻译成相应的ht
48、ml标记传送给客户浏览器显示。下面是几个简单的例子,读者通过它们可以对asp有更深的感性认识。1显示现在的日期时间譬如站点服务器的asp1.asp文件中有下面的语句:现在是:<%=now%>在用户端浏览器中将会显示:现在是:1999/8/17下午3:11:202重复循环这个asp例子在用户端浏览器,浏览执行的结果是显示五个重复的句子,并且字体越来越大。站点服务器asp2.asp文件的asp源代码如下:asp求例循环<%for i=1to 5%><font size=<%=i%>color=#0000ff>快速掌握internet技术</fo
49、nt><br><%next%>active server pages的源代码,不会传到用户的浏览器,可以保护网页制作者编写的源代码不会外漏。在用户端观看到的是常规的html码,你的站点服务器会自动将active server pages的程序代码,解释为标准的html格式的主页内容,如上面的asp代码将会解释成如下形式:<font size=1 color=#0000ff>快速掌握internet技术</font><br><font size=2 color=#0000ff>快速掌握internet技术</fo
50、nt><br><font size=3 color=#0000ff>快速掌握internet技术</font><br><font size=4 color=#0000ff>快速掌握internet技术</font><br><font size=5 color=#0000ff>快速掌握internet技术</font><br>3传送字符串到用户端的浏览器asp语法中的response.write方法是最常用的传送字符串到浏览器的方法,其地位就和javascript中的do
51、cument.write一样。语法如下:response.write字符串以下的例子用来向用户打招呼:<%response.write"欢迎光临"%>也可以用如下方法:<%>欢迎光临<%>另外asp可以使用vbscript或jscript,并且可与任何activex scripting语言兼容,可通过plug-in的方式,使用由third party所提供的其他譬如rexx,perl,tcl等scripting语言。与html一样,asp文档也使用<script>标记来嵌入脚本。asp默认的script语言为vbscript,
52、 若要设定某一段asp程序代码使用的script语言,可以使用“<script runat =server langrage=></script>”加以设定,譬如asp程序码使用jscript语言。asp示例使用javascript<html><body><%call函数不清%></body></html><script runat=server langrage=jscript>function函数10response.write“叫到我了”;</script>设定某一主页的scrip
53、t语言使用“<%language=%>”加以设定,语法如下:<%language=vbscript%>但要注意和language之间一定得有空格隔开。9.5 java语言由sun公司推出的java语言是当今世界上最为热门的网络编程语言之一。java的产生可以追溯到1991年。当时sun公司的一个专家小组企图用一种全新的语言来取代c+,并最终用它来控制所有的家电,这种语言就是java。有趣的是,java产生以后,并没有在控制家电行业流行开来。反而在网络信息处理系统开发过程中风行一时,成为目前最为流行的软件开发工具。java是一种具有简单,面向对象,分布式,解释型,健壮,安
54、全,体系结构中立,可移植,高性能,多线程和动态等各种特性的语言。java是一种从c+继承来的完整的面向对象程序设计语言。它具有c+的所有优点,但却取消了一些不可靠的功能,如指针和不安全性。java是通过库来扩展自己的。例如它有一个称为awt的用户界面对象的库、一个i/o库、一个网络库等等。可以使用java来建立装到web上并在浏览器上执行的applet以及单独的应用程序。我们将重点讨论浏览器上用的applet,但是由于java具有很强的能力,你可以把java用作基本的开发环境。java实际上不仅仅是一门编程语言,它还包含一个客户/服务器模式下的开发和执行环境。如果你已经掌握了c+和面向对象程序
55、概念,则对学习java是很有帮助的。9.5.1 java的主要特点java是一种纯面向对象的语言。相对而言c+,dephi等实际上是混合型语言,是过程语言加上面向对象的扩展。而java则不然,任何方面都是基于消息或基于对象的。所有数据类型均为对象类。甚至于数学运算也是面向对象的。为了保证编程的简易性,也可以按非对象处理。这也是推荐使用的方法。关于面向对象原理参照其他文献。java语言之所以流行是因为它简单、易学、容易操作和使用,而且功能强大。概括起来,java的主要特点如下:1解释性、可移植性和与应用平台的无关性解释性是指java是一种解释性的程序设计语言,从而避免了传统编译型语言在系统开发时
56、所遇到的各种问题。可移植性和与应用平台的无关性是指java在运行上不依赖于某个固定的软件平台,因而很容易移植。 程序的移植性是指程序不经过修改而在不同硬件或软件平台上运行的特性。可移植性包括两种层次:源代码级可移植性和二进制级可移植性。c和c+只具有源代码级可移植性,表明c或c+源程序要能够在不同平台上运行,必须重新编译。而java是真正的二进制可移植的。java编译器所生成的可执行代码并不基于任何具体硬件平台,而是基于java虚拟机(java virtual machine,jvm)。通过预先把java源程序编译成字节码,java避免了传统的解释语言的性能瓶颈,并确保了其可移植性。2简单性。
57、在支持强大功能的同时保持系统开发和使用上的简单性是java开发小组一开始就遵循的宗旨。由于java起源于信息家电的嵌入式系统,所以具备了简单明了的特性。java开发小组把它戏称为:kiss(keep it simple,stupid)策略。正式因为java语言的这样一个特点,使得它既能够支持面向对象的开发方法,又能使开发过程简单易行。从而java开始在众多的面向对象开发语言中脱颖而出,成为当今软件开发工具中的新宠。3高性能。java是多线程的语言,提高了程序执行的并发程度。而c+采用的是单线程的体系结构,均未提供对线程的语言级支持。4面向对象性java具有面向对象的基本特性和优点,但java不
58、是真正意义上的面向对象的程序语言。所以,java在操作上远比真正意义上的面向对象的其他程序语言要简单。5动态性、分布性和安全性java具有把分布在网络上的对象当作本地对象来处理的能力,整个系统的分布能力极好。java的网络处理功能是靠java良好的系统安全性能来保障的。没有安全性能的保障,再好的系统商务处理系统也不敢使用。java与c+一样大量使用类库,而c+面临的一个问题是一旦类库升级,应用程序必须重新编译。而java采用滞后联编技术,类是在运行时动态装载的。自动维护其一致性;分布包括数据分布和操作分布。java两种都支持。9.5.2 面向对象的java编程java 程序有两种类型:applet 和 application。简单的讲,applet就是嵌入web文档的程序,而application则是所有其它类型的程序。本文中主要讨论applet。在编译和检验java applet前,需要两样东西:java编译器和支持java的浏览器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年多式联运风险管理协议
- 销售合同协议条款规范
- 研究对手战术方法
- 2026年党员干部党规党纪知识竞赛试题库及答案
- 养老院防火巡查、检查制度
- 2026年品牌活动合作合同协议
- 2026年度“应知应会”知识竞赛测试题(含答案)
- 慢病防控策略的多部门协作实践
- 慢病防控十年策略:全周期管理与多部门协同
- 慢病防控中的健康公平与资源分配策略
- 2025至2030工业远程终端单元(RTU)行业调研及市场前景预测评估报告
- 2026届上海市交大附中高二化学第一学期期末统考模拟试题含答案
- 中药硬膏贴敷疗法
- 光伏发电工程质量管理办法
- 2026年湖南财经工业职业技术学院单招职业倾向性测试题库附答案
- 土地续租赁合同(标准版)
- 南京铁道职业技术学院单招《语文》高频难、易错点题附完整答案详解(名校卷)
- 生产部门年终汇报
- 铜及铜合金熔铸安全设计与生产规范-编制说明
- 公安联考试题真题及答案
- DBJ53T-50-2013 云南省建筑工程结构实体检测技术规程
评论
0/150
提交评论