电子商务实用开发技术.ppt
电子商务概论,07国贸营销专业主讲:陈 婷,2,第七章 电子商务实用开发技术,前台(客户端)开发技术 后台(服务器端)技术 Web Service技术,3,第一节 前台(客户端)开发技术,一、用户界面体系结构动态内容表现有三种用户界面体系结构,一是服务器端提供动态逻辑,二是使用脚本语言来表现动态内容,三是通过运行在客户端的应用程序来实现动态内容。,4,一、用户界面体系结构:服务器端逻辑体系结构(1),图7-1 服务器端逻辑体系结构,5,一、用户界面体系结构:服务器端逻辑体系结构(2),由于在Web服务器上,最简单和最常用的体系结构是完全依靠服务器来提供用户界面内容。客户端包括一个浏览器,主要用来显示从服务器上得到的页面。每一个用户动作,例如按下一个按钮,都产生一个对服务器的请求指令,服务器处理这个请求并计算结果,生成一个新的页面再次发送到客户端。服务器端的操作可以分成三个步骤:控制逻辑 业务逻辑 内容构建,6,一、用户界面体系结构:客户端脚本体系结构(1),向客户端提供动态内容的另一种途径是将脚本作为HTML页面的一部分,从服务器传送到客户端,脚本通常包括一些不需要与服务器应用程序通信就能在客户端执行的应用逻辑,如图7-2所示。复杂的逻辑仍然由服务器端执行,这就需要客户端给服务器端发出新的请求,服务器端处理后,将处理结果返回给客户端,最终还是由脚本作进一步处理。这种体系结构的优点是服务器与用户的通信较少,需要的服务器资源也比较少(由于在客户端执行一些业务逻辑),可以对用户动作给出更多的响应(如鼠标的移动)。支持该体系结构的技术,代表性的有ECMAScript/JavaScript/Jscript、VBScript和 DHTML(Dynamic HTML)。,7,一、用户界面体系结构:客户端脚本体系结构(2),图7-2 客户端脚本体系结构,8,一、用户界面体系结构:客户端应用体系结构(1),在客户端加入逻辑的另一个体系结构是在客户端运行一个功能完全的应用程序。用户可以下载这个程序(每次站点访问的下载或者将这个应用程序放在用户的高速缓存中)。此后它将控制用户的交互和内容构造。当服务器上执行的业务逻辑必须初始化时,通信才成为必要。这种通信是通过内嵌在http中的协议来完成的,并且它只传输必要的网络数据(并不需要传输HTML数据内容)。因此,在客户端和服务器端均需要附加的通信逻辑。该体系结构的优点是消除了用户界面和业务逻辑的区别;与服务器的通信量很少;Web页面可离线浏览;不需要很多服务器资源。,9,一、用户界面体系结构:客户端应用体系结构(2),10,一、用户界面体系结构:客户端应用体系结构(3),支持客户端应用体系结构的技术有:Java applets是可以作为Web文档中的附件来分发的Java程序。Applets的代码可以被支持Java的浏览器解释和执行。Java应用程序是运行在客户端系统上的独立的应用程序,这种客户端系统与浏览器无关。Active X为一组综合技术,这些技术使得用任何语言写的软件构件在网络环境中能相互操作。http:/=y&src=google&tracelog=cgs_g_yczhuce&activity=ppcok,11,二、体系结构选型与跨平台技术:瘦客户机和胖客户机(1),有关用户界面体系结构的讨论总是与瘦客户和胖客户的讨论有关。在客户/服务器的应用中,瘦客户是指客户机被设计得很小,大多数的数据操作都在服务器端进行;而胖客户是指在本地客户端执行大多数的数据处理,只有数据本身是存储在服务器上。对Web应用而言,服务器端逻辑体系结构是典型的瘦客户,而客户端应用体系结构和大部分的需要特定插件的多媒体技术,可以被看作是一种胖客户,虽然在大多数情况下服务器还要处理数据存取的其他任务。胖客户与瘦客户有其各自的特点,12,二、体系结构选型与跨平台技术:瘦客户机和胖客户机(2),13,二、体系结构选型与跨平台技术:易用性(1),在易用性是选择用户界面体系结构的一个主要参考标准。易用性是指用户不需要特殊培训就可使用这些程序,它是应用程序能否被用户接受的重要指标。在互联网环境下,易用性有着特殊的含义。MEHolzschlag提出了构成一个良好界面设计的特征:隐语的使用、清晰、统一、定位、导航功能。不同的界面体系结构所表现出来的易用性是不一样的。,14,二、体系结构选型与跨平台技术:易用性(2),服务器端逻辑体系结构。该体系结构只能容纳很简单的用户界面(超链接或表单),这就限制了向用户提供高水平的导航与定位帮助。客户端脚本体系结构。脚本能比纯粹的静态方法提供更加复杂的导航和定位帮助,但脚本语言缺少像Java的AWT或Swing那样的图形用户界面脚本库支持,且运行的脚本在每一次访问时都要下载,因此脚本语言不适合实现非常复杂的行为。客户端应用体系结构。复杂的语言元素和标准库使得客户端应用比脚本支持更复杂的逻辑行为,但要充分利用程序语言和标准库的功能来设计一个优良的、友好的用户界面需要在界面设计方面有相当丰富的经验。,15,二、体系结构选型与跨平台技术:时间性能(1),时间性能是另一个用以选择适当的体系结构的关键因素。处理Web用户界面时可能出现的时间瓶颈:初始化时间,直到第一个用户交互完成的时间(下载时间)客户端处理一个用户交互所需的时间(客户装入)需要与服务器交互的次数(服务器依赖度)从客户端向服务器传输消息及反馈结果所需的时间(网络传输时间)服务器处理用户交互所需的时间(服务器装入),16,二、体系结构选型与跨平台技术:时间性能(2),不同的界面体系结构,其时间性能也不同服务器端逻辑体系结构。对于服务器端逻辑体系结构而言,服务器 的响应信息不仅包括事件需要的数据,还包括这些数据所需的设计 定义,这就导致客户同服务器之间存在频繁的、大量的信息传输,因此响应时间较长。客户端脚本体系结构。由于脚本提供了在客户端上运行一些控制逻 辑的功能,提高了系统的响应速度。客户端应用体系结构。客户端应用程序的主要缺点是初始化时需要 较长的下载时间。目前解决该问题的技术有:延迟模块装载应用程序分割 客户端安装 Applet缓存,17,二、体系结构选型与跨平台技术:安全性(1),在前面的章节里我们已经知道了安全性包括服务器端的安全(包括CGI/Servlet安全和防火墙)、客户端的安全以及通信信道的安全(如何保证在服务器与用户间消息传递的真实性、完整性和保密性)。这里讨论的是针对客户端的安全,因为当客户端访问某个Web站点时,其完整性可能因恶意的ActiveX控件或其他代码而遭到破坏。服务器端逻辑体系结构。单纯的静态内容在客户端既不执行也不解释任何代码,仅仅是呈现出来,因此它对客户端的威胁最小,到目前为止,几乎没有发现什么安全漏洞。,18,二、体系结构选型与跨平台技术:安全性(2),客户端脚本体系结构。DHTML依靠于JavaScript,所以客户端的安全问题主要是JavaScript(JScript)的安全性问题。JavaScript没有内置的安全模式阻止恶意脚本损害客户系统。它的安全性完全靠功能约束实现。客户端的JavaScript并没有删除和改写文件的功能,也没有任何类型的网络元语。但语言本身也存在一些漏洞,给系统带来了安全隐患。客户端应用体系结构。从安全的角度分析,客户端应用技术划分为两个范畴:当有关HTML文件被请求时,浏览器立即自动下载并启动动态内容应用程序分割 需要用户进行安装的应用程序 Applet缓存,19,二、体系结构选型与跨平台技术:平台兼容性,服务器端逻辑体系结构。由于该体系结构的代码均在服务器端运行,而HTML几乎被所有浏览器支持,因此无需从客户端考虑平台问题。客户端脚本体系结构。使用客户端脚本体系结构,将有许多不兼容问题出现。虽然很多平台都支持JavaScript,但在不同产品中存在明显的差异。客户端应用体系结构。由于从一开始就采取了很多措施来标准化Java语言和APIs,因此Java的兼容性做得比较好。但是在开发applet时,由于采用Java版本不同,也引起了一些平台兼容性问题。JDK的低版本被广泛支持,JDK高版本的某些特性则不被所有的浏览器和操作系统支持。,20,三、脚本语言及CSS样式表应用:脚本语言(1),脚本语言是介于 HTML 和 Java、C+和 Visual Basic 之类的编程语言之间的语言。HTML 通常用于格式化文本和链接网页。编程语言通常用于向计算机发送一系列复杂指令。脚本语言也可用来向计算机发送指令,但它们的语法和规则没有可编译的编程语言那样严格和复杂。脚本语言主要用于格式化文本和调用以编程语言编写的已编译好的组件。ECMAScript。ECMAScript是由ECMA(欧洲计算机制造商协会)标准化后,并以 ECMA-262语言规范的形式对外公开发布。它是从 JavaScript1.1和Jscript1.0等技术上发展起来的。ECMAScript仅仅是一种规范描述,定义了脚本语言的所有属性、方法和对象,其他的语言可以实现以ECMAScript为基准的功能。ECMAScript目前发布的最高版本是3.0。,21,三、脚本语言及CSS样式表应用:脚本语言(2),JavaScript。JavaScript是网景公司开发的脚本语言,它的1.3版完全符合了ECMAScript脚本语言规范第一版。该语言包括一些核心对象和核心语言元素构成的核心集。JScript。JScript是微软公司开发的脚本语言,它的3.0版基本符合了ECMAScript脚本语言规范第一版,目前微软声称J(Jscript 8.0)几乎支持ECMAScript3.0所有功能。JScript只有在 Microsoft IE或 Microsoft IIS的解释器下才能运行。VBScript。VBScript是Microsoft Visual Basic家族的新成员。VBScript为IE带来了“动态脚本”,同样也被 Windows脚本主机和Microsoft IIS所支持。,22,三、脚本语言及CSS样式表应用:脚本语言(3),DHTML。DHTML是将HTML、CSS和脚本语言有机结合来制作动感的、交互性网页的技术。其中HTML用来定义网页元素,如段落、表格等。CSS用来描述元素属性,如大小、颜色、位置等。脚本语言用来操纵网页元素和浏览器。DHTML并不是什么新的技术,它只不过是一些现有网页技术与标准的整合。DHTML技术主要包括:样式表(Microsoft和 Netscape)内容的定位(Microsoft和 Netscape)动态内容(仅限于Microsoft)数据绑定(仅限于Microsoft)可下载的字体(仅限于Netscape),23,三、脚本语言及CSS样式表应用:CSS样式表(1),层叠样式表(Cascading Style Sheets,CSS)是一组样式,样式中的属性在HTML文档中依次出现,并显示在浏览器中。通常可用4种方法将定义的样式与HTML文档结合 内联样式。可以使用STYLE属性内联样式。CSS Sample:内联样式红色的“华文琥珀”斜体字,如果字体可用的话(一)。红色的“华文琥珀”斜体字,如果字体可用的话(二)。,24,三、脚本语言及CSS样式表应用:CSS样式表(2),嵌入样式。一个样式表可以使用STYLE元素嵌入在文档中,STYLE元素放在文档的HEAD部分。CSS Sample:嵌入样式 红色的华文琥珀斜体字,如果字体可用的话(一)。红色的华文琥珀斜体字,如果字体可用的话(二)。,25,三、脚本语言及CSS样式表应用:CSS样式表(3),输入样式:一个样式表可以使用CSS的import 声明被输入。CSS Sample:输入样式 红色的华文琥珀斜体字,如果字体可用的话(一)。红色的华文琥珀斜体字,如果字体可用的话(二)。如果STYLE中包含了其它的CSS规则,要注意所有的import 声明必须放在样式表的开始部分。,26,三、脚本语言及CSS样式表应用:CSS样式表(4),链接外部样式。一个外部样式表可以通过HTML的LINK元素连接到HTML文档中,标记放置在文档的HEAD部分。CSS Sample:链接外部样式 红色的“华文琥珀”斜体字,如果字体可用的话(一)。红色的“华文琥珀”斜体字,如果字体可用的话(二)。,27,第七章 电子商务实用开发技术,前台(客户端)开发技术 后台(服务器端)技术 Web Service技术,28,第二节 后台(服务器端)技术,一、服务器端技术概述 动态页面是由Web服务器根据客户的请求(包括可能的参数)在运行时刻产生的Web页面。而静态页面并不是在客户发出请求之后产生的,通常事先存放在Web服务器的文件系统中。与提供静态页面相比,动态页面的生成需要服务器做更多的事情。支持动态页面生成的技术主要包括公共网关接口、服务器端脚本技术、插件技术、Servlet技术和JSP技术。,29,一、服务器端技术概述:公共网关接口,公共网关接口(Common Gateway Interface,CGI)是Web服务器生成动态页面的原始方法,它是应用程序和Web服务器之间的接口标准。通常HTML表单和CGI一起使用,CGI程序允许用户通过网页把数据输入数据库,也允许数据从数据库流向用户。CGI程序通常可以使用C/C+、PERL、TCL(Tool Command Language)、VB等语言来写。但是,在CGI模型中,对每一个访问CGI程序的HTTP请求,服务器端都会产生一个新的进程来处理这个请求。这种模式限制了服务器同时处理多个请求的能力,另外,CGI程序无法与Web服务器交互,因为两者运行在不同的进程中。,30,一、服务器端技术概述:服务器端脚本技术和插件技术,服务器端脚本技术。服务器端脚本技术是指Web应用开发者在Web页面中直接嵌入脚本生成动态页面,当这些页面被请求时,页面中的脚本由服务器解释产生动态内容。该技术的代表是Microsoft的ASP(Active Server Pages)和Allaire的ColdFusion。该技术没有跨平台性,仅局限于某种类型的产品或操作系统,开发者必须学习某种特定的脚本语言。插件技术。各种Web服务器支持若干种典型的插件技术。包括Netscape NSAPI和Microsoft ISAPI。该技术能提供比较好的性能,但由于与Web服务器的耦合度太强,编程难度也较大。,31,一、服务器端技术概述:Servlet 技术和JSP,Servlet是产生动态内容的一种服务器端Java技术。具有以下特性:可移植性持久性和高性能 基于Java JSP是一种基于Java的脚本技术,具有下列特性:内容表达与数据生成的分离 更好的MVC分层体系结构基于Java易用性 可移植性 基于Java 支持协作开发,32,二、基于ASP的服务器端开发:ASP简介,ASP是Active Server Pages(动态服务器网页)的缩写,它是Microsoft公司开发的一个服务器端的脚本环境,在站点的Web服务器上解释脚本,可产生并执行动态、交互式且高效的站点服务器应用程序。ASP可以胜任基于Microsoft Web服务器的各种动态数据发布。以下是ASP所具有的一些特点:使用VBScript、Jscript等简单易懂的脚本语言 无需编译,可在服务器端直接执行 与浏览器无关 ASP能与任何ActiveX scripting语言相容 ASP的源程序不会被传到客户浏览器 面向对象,33,二、基于ASP的服务器端开发:基于ASP技术的Web服务 器运行环境(1),ASP是微软公司提供的,目前可在微软公司的下列平台上使用,其他的服务器在安装了ASP组件后也能实现这个功能。一般站点都是用IIS作为服务器,PWS是为一般的PC用户开发的。IIS是一种Web服务,主要包括WWW服务器、FTP服务器等,它使得在Internet或Intranet上发布信息成了一件很容易的事。下面以WindowsXP为例,介绍Web服务器环境设置 Windows2003+IIS(Internet Information Service,Internet信息服务)WindowsXP+IIS Windows2000 Advance Server+IIS Windows2000 Server+IIS,34,二、基于ASP的服务器端开发:基于ASP技术的Web服务 器运行环境(2),Windows2000 Pro+IIS Win98+PWS(Personnel Web Service)下面以WindowsXP为例,介绍Web服务器环境设置。(1)在安装Windows系统时,IIS默认为不安装,因此在配置Web之前需先安装IIS。(2)进入控制面板的“管理工具”里面,点击“Internet服务管理器”,就进入了IIS服务器的管理界面,如图7-4所示。,35,二、基于ASP的服务器端开发:基于ASP技术的Web服务 器运行环境(3),图7-4 目录设置,图7-5 属性设置之一,36,二、基于ASP的服务器端开发:基于ASP技术的Web服务 器运行环境(4),图7-6 属性设置之二,图7-3 属性设置之三,37,二、基于ASP的服务器端开发:ASP同脚本语言的关系,ASP是一套服务器端的对象模型。下面的例子用来说明ASP与脚本语言的关系:此例中,IF语句和赋值语句都是脚本语言VBScript的标准语法,而Session(“Name”)则是ASP中Session对象的一个引用。VBscript(或JavaScript)是一种解释型语言,由Web服务器或浏览器解释执行。,38,三、基于JSP的服务器端开发:应用体系结构(1),基于Servlet、JSP和JavaBeans的Web应用体系结构,39,三、基于JSP的服务器端开发:应用体系结构(2),HTML页面。输入的数据可以在浏览器通过HTML页面中的JavaScript进行验证,或者发给服务器后由Servlet来验证。Servlet。Servlet从应用服务器取得控制权,来执行基本的流程控制。Command Beans。控制业务逻辑的处理。Data Beans。保存由Command Beans或者后台系统计算的结果。View Beans。为JSPs和Data Beans架构了桥梁。JSPs。为浏览器生成有关输出。,40,三、基于JSP的服务器端开发:MVC设计模式,JSP设计遵循了MVC设计模式,该设计模式包含3个部件:模型是针对有关数据以及与之关联的事务处理,它是业务逻辑 视图是针对数据的显示,它是页面的构建 控制器是针对模型与外部世界的交互,它是交互的控制,MVC示图,MVC处理过程:,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理然后模型用业务逻辑来处理用户的请求并返回数据最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。,为什么使用MVC:,MVC从根本上强制性的将数据层代码和表示层代码分开多个视图能共享一个模型,由于模型返回的数据没有进行格式化,同样的构件能被不同界面使用。即模型取得的数据是原始数据,所以你可以采用视图view进行自己的格式化数据,生成不同的展现视图 MVC的应用程序的三个部件相互对立,可以使用控制器来联接不同的模型和视图去完成用户的需求,44,四、基于.NET的开发技术:.NET基本概念,.NET是Microsoft面向XML Web服务的平台,它使用一种统一的、个性化的方式将客户的信息、设备和人员紧密联系在一起。Microsoft 认为向分布式计算的转变正在悄悄地进行着,.NET 的目的正是要加速产生下一代分布式计算的过程,是微软用来实现XML,Web Services,SOA和敏捷性的技术。.NET代表着联通性、敏捷性和成功:联通性。.NET的远景是让所有的事物都连接起来敏捷性。它体现在商务敏捷性和IT敏捷性两方面成功。.NET创建敏捷的系统,带来商务上的成功,45,四、基于.NET的开发技术:.NET的三层架构,所谓三层体系结构是在客户端与数据库之间加入了一个组件层。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了组件层进行处理。.NET三层架构,46,四、基于.NET的开发技术:.NET的开发语言,C#语言。C#(读作“Csharp”)是一种简单、现代、面向对象且类型安全的编程语言,C#同时具备“应用程序快速开发”语言的高效率和C+固有的强大能力。C#吸收了Java的许多优点。C+.NET。从VisualC+.NET开始,标准C+语言已扩展成为托管编程提供支持。J#。VisualJ#提供独立开发的类库集以提供大多数JDK1.1.4级类库的功能JScript.NET。Microsoft实现ECMA262语言的新一代版本。通过将先前版本的JScript功能集与基于类的语言的最佳功能相结合,JScript.NET包含了这两个领域的精华部分。,47,四、基于.NET的开发技术:一个简单的.NET应用举例,该示例为用户注册的简单例子。数据库中只有一个表,表结构如下。以三层架构搭建框架。共三层4个项目:表现层直接与用户进行交互,显示和获取数据,并对用户输入进行检验。Web:B/S结构模型Windows:C/S结构模型。BLL业务逻辑层:实现业务逻辑OleDbDAL数据访问层:负责与数据库通信,存取数据,48,第七章 电子商务实用开发技术,前台(客户端)开发技术 后台(服务器端)技术 Web Service技术,49,第三节 Web Service技术,一、Web Service的定义及特征 Web Service是一种新型的Web应用程序。它是自适应、自我描述、模块化的应用程序,可以使用标准的互连网协议,将功能体现在互联网和内联网上。这些应用程序可以跨越Web进行发布、定位和调用,可将Web Service视作Web上的组件编程。Web Service具备如下的特征:封装完好。Web Service是一种组件,它自然具备组件的一些基本特征。对于用户而言,只能看到Web Service提供的网络编程接口。,50,一、Web Service的定义及特征,松散耦合。对象组件技术的一个基本特点就是透明性,即当一个组件的实现内容发生变化之后,调用它的用户不会发现其中的变化,即组件的内容对用户是透明的。高度的可集成能力。这种特性是由Web Service所采用的规范决定的。由于Web Service采取简单的、易理解的标准Web协议作为组件界面描述和协同描述规范,完全屏蔽了不同软件平台的差异,实现了高度的可集成性。使用标准的协议和规范。Web Service要实现上述的优良特性,必须遵循定义良好的、开放的标准协议,如WSDL、XML、SOAP等。,51,二、Web Service架构与模型:Web Service架构,无论Web Service使用哪种工具和语言开发,只要它是通过SOAP协议被调用,其架构都可用图7-10描述。,图7-10 典型Web Service结构图,52,二、Web Service架构与模型:Web Service模型(1),Web Service体系结构基于三个角色之间的相互作用,这三个角色是:服务提供者(Service Provider)服务注册处(Service Registry)服务请求者(Service Requestor)它们之间的相互作用关系如图7-11所示。,53,二、Web Service架构与模型:Web Service模型(2),图7-11 Web Service体系结构中的角色关系,一个典型的服务是:服务提供者有一个从网络可以访问的软件模块(由Web Service实现),服务提供者还提供了这个服务的描述,并将它发布到服务请求者或者服务注册处。,54,二、Web Service架构与模型:Web Service模型(2),Web Service模型中的角色 服务提供者。从企业的角度来看它是服务的所有者,从整个体系的角度看它是容纳服务的平台。服务请求者。从企业的角度看它是一个寻求一定服务功能的请求者,从整个体系的角度来看它也是一个寻找和调用服务的应用程序。服务注册处。它是服务提供者发布其服务描述的地方。Web Service模型中的操作 发布(Publication)发现(Discovery)绑定(Binding),55,三、Web Service技术基础:XML(1),XML(可扩展标记语言)是一种构造数据的技术,是W3C(World Wide Web Consortium)的一个推荐标准。XML不仅允许用户 定义自己的一套标记,而且允许用户根据各种不同的规则来指定标记。DTD(Document Type Definition)即文档类型定义,指用不同于XML的独立语法来规定XML文档中各种元素集合的内容模式,语言直接沿袭了定义SGML语言的方法,具有以下特点:DTD使得XML文档保持一致 DTD可以共享绑定(Binding)DTD提供了对XML语汇的形式化和完整的定义每个XML文档由单个的DTD来限制,56,三、Web Service技术基础:XML(2),XSL。XML文档决定了文档的内容,样式表XSL(Extensible Stylesheet Language)则规定着文档的显示。XSL是通过XML进行定义的,遵守XML的语法规则,是XML的一种具体应用。XSL由两大部分组成:第一部分描述了如何将一个XML文档进行转换,转换为可浏览或可输出的格式;第二部分则定义了格式对象FO(Formatted Object)。XSLT。XSLT(Extensible Stylesheet Language Transformations)标准用来描述如何识别、选择、匹配XML文档中的各个构成元件,包括元素、属性、文字内容等。XSLT主要的功能就是转换,它将一个没有形式表现的XML内容文档作为一个源树,将其转换为一个有样式信息的结果树。,57,三、Web Service技术基础:SOAP(1),SOAP(Simple Object Access Protocol,简单对象访问协议)是基于XML的,在分布式的环境中交换信息的简单的协议。SOAP协议规范描述了有关SOAP的消息处理过程,并涉及到性能和安全性的问题。SOAP的消息路径机制和可扩充的Header和Body机制又为分布式计算提供了很好的支持。它包括四个部分:SOAP信封。封装定义了一个描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架。SOAP编码规则。用于表示应用程序需要使用的数据类型的实例,SOAP的一个设计目标就是要利用XML的可扩展性和可伸缩性来包装和交换RPC调用。SOAP RPC表示。表示远程过程调用和应答的协定。SOAP 绑定。使用底层协议交换信息。,58,三、Web Service技术基础:SOAP(2),消息交换机制。从根本上来看,SOAP消息是从发送方到接受方的一种传输方法,但是SOAP消息一般会和实现模式结合。无论SOAP与哪种协议绑定,消息都可以通过消息路径来指定路线发送,消息路径机制使消息在到达最终目的地之前可以在一个或多个中间服务上处理。SOAP模型。SOAP可理解成协议SOAP=RPC+HTTP+XML。XML提供了一个跨平台的数据编码格式化方法;SOAP则在XML之上,定义了一种跨系统平台的交换信息的简单包装方法;绑定于HTTP之上的SOAP协议,则是在包装的协议之上,定义了在系统之间进行与编程语言、操作系统无关的远程调用方法。使用XML和SOAP这样的跨语言、跨平台的解决方案简化了多个应用之间的一致性问题。,59,三、Web Service技术基础:WSDL(1),WSDL(Web Service Description Language,服务描述语言)提供了一个基于XML的简单语汇表,用来描述通过网络提 供的基于XML的Web Service,描述Web Service做什么,它在哪里及如何调用它。WSDL本身不规定如何发布或公布这种服务描述,而是将这项任务留给其他规范。WSDL将Web Service描述定义为一组服务访问点,客户端可以通过这些服务访问点,对包含面向文档信息或面向过程调用的服务进行访问(类似远程过程调用)。WSDL首先对访问的操作和访问时使用的请求/响应消息进行抽象描述,然后将其绑定到具体的传输协议和消息格式上以最终定义具体部署的服务访问点。相关的具体部署的服务访问点通过组合就成为抽象的Web Service。,60,三、Web Service技术基础:WSDL(2),WSDL(Web Service Description Language,服务描述语言)提供了一个基于XML的简单语汇表,图7-13描述了WSDL文档在Web Service交互中的作用。,图 7-13 WSDL文档在Web Service交互中的作用,61,三、Web Service技术基础:WSDL(3),WSDL元素。在WSDL规范中,定义了如何使用SOAP消息格式、HTTP GET/POST消息格式以及MIME格式来完成Web Service交互的规范。WSDL文档在Web Service的定义中使用下列元素:Types。数据类型定义的容器。Message。通信消息的数据结构的抽象类型化定义。Operation。对服务中所支持的操作的抽象描述。PortType。某个访问入口点类型支持的操作的抽象集合。Port。定义为协议/数据格式绑定与具体Web访问地址组合的单个服务访问点。Binding。特定端口类型的具体协议和数据格式规范的绑定。Service。相关服务访问点的集合。,62,三、Web Service技术基础:UDDI(1),UDDI概述。UDDI(Universal Description,Discovery and Integration,统一描述、发现和集成协议),定义了Web Service的发布和发现的方法。UDDI规范在XML和SOAP的基础上定义了新的一层,在这一层次,UDDI提供了一种基于分布式的商业注册中心的方法,该商业注册中心维护了一个Web Service的全球目录,而且其中的信息描述格式基于通用的XML格式。UDDI技术发现层。UDDI标准描述了一个由Web Service所构成的一个概念上的云状结构,和一个定义Web应用服务框架的编程接口。UDDI标准和计划用来在互联网上建立起“发现”服务。这些“发现”服务提供了一致的发布接口,使得企业能编程进行“发现”操作。,63,三、Web Service技术基础:UDDI(2),UDDI标准包括了一个SOAP消息的XML Schema描述,一个UDDI标准API。UDDI的XML Schema定义了四种类型的信息:UDDI信息模型图,64,三、Web Service技术基础:UDDI(3),商业实体信息(Business Entity)。商业实体信息包括公司的一般信息,如名称、地址和联系信息。商业服务信息(Business Service)。描述商业实体提供的服务。绑定信息(Binding Template)。指服务访问入口和使用的协议。技术模型信息(tModel)。提供了Web Service的WSDL的入口及相关信息。,65,四、Web Service的应用领域,面向商业的Web Service。指面向企业应用的服务,包括企业内部的ERP系统、企业间的SCM、CRM等系统。面向消费者的Web Service。此类服务是对已有B2C网站的改造,为面向浏览器的Web应用增加Web Service的应用界面,使得第三方的桌面工具或其自身提供的增值桌面工具能够利用更优秀的用户界面提供跨越多个B2C服务的桌面服务。面向设备的Web Service。此类服务的使用终端一般是手持设备或家电。面向系统的Web Service。指一些传统意义上的系统服务,如果将其移植到Internet/Intranet上,其作用范围将从单个系统或局域网拓展到整个Internet或Intranet。,66,本章小结,本章首先介绍了前后台的常用开发技术及所采用的应用架构,然后重点介绍了Web Service技术。目前涉及到的应用系统开发技术非常广泛,做为电子商务概论教材,本章只做了一些简单介绍。感兴趣的读者可阅读更多的专门书籍来完成相关知识的学习。本章的主要内容的教学要求可以是“了解”。,第八章 电子商务系统规划与建设,建立电子商务网站的主要形式自主网站:企业内部网是Internet的一部分主机托管(IDC)虚拟主机(http:/)网页挂接(http:/,电子商务系统开发方法,结构化开发方法 原型法面向对象开发方法敏捷开发方法,敏捷开发,现状:客户的业务需求还在研发中并不断调整开发周期短,年内必须上线,解决方案:使用敏捷模式来进行及时的项目计划调整在每个敏捷周期都能生成可用的功能模块,减少项目风险及时看到产品特性有助于进一步优化业务需求,69,敏捷开发 关键的成功因素,2,3,4,5,计划与跟踪,需求流程,构架,工具,代码管理、编译方法和发布流程,项目整体目标与阶段性计划的协调敏捷的计划在迭代中提高了项目交付的灵活性基于依赖性设定计划并确保计划的灵活性和时效性以可以实际应用的功能完成报告来体现项目完成情况,以需求驱动计划调整的过程,敏捷开发的系统框架的重点要求能够容易地增加功能,工欲善其事必先利其器,工具决定了开发和测试的效率,结合紧密的代码管理、编译方法和发布流程,1,70,敏捷开发 要点,敏捷开发专注于,经常性的提交工作成果,客户的参与,鼓励改变,71,敏捷开发 图示,72,Web站点的规划与建设阶段,总体规划与需求分析阶段站点需要、目标浏览者,网站实现的目标,资金,时间,设计阶段工具(软硬),数据库,网站功能,内容和版面设计开发实现阶段设备购置,程序编写调试,数据准备,人员培训发布阶段(宣传)传统广告,网上图标,邮件,bbs,知名网站注册网址管理维护阶段软件,数据,设备,系统安全,如何建立网页,主题区段标题HTML中有六种标题-,用不同的字体和字号显示标题内容,显示最大标题,显示最小标题分段标记符换行标记符,强制断行,FONT标记,Size属性-字号属性的值可以从1到7,3是默认值,该属性可以用符号+或来作为相对值指定Color属性-控制字体的颜色Face属性-指定字体样式,可以指定一个或几个字体名称,用逗号隔开,添加水平线 包括:size改变水平线的粗细程度;width改变水平线的长度;noshade改变水平线以实线显示;color改变水平线的的颜色插入图片-支持gif或jpeg SRC属性用来表识一个图片文件名,或指出URL的路径名 其格式为:,网页制作注意事项:,所有操作从站点管理器开始,不是从制作一个页面开始网站名称一律用英文小写网站首页的文件名为index.html(命名规范),网站建设过程:,站点管理器创建本地站点,将本地文件夹转化为站点 testwebmysite站点内部文件夹,文件夹的创建 建立index.html 建立pic,design,download,flash,links文件夹,一般一个文件夹代表一个栏目,过程:,创建简单链接可视化方法创建链接用属性面板方式创建链接网站的目录结构和链接结构设计(P335)网页的设计:选题;组织结构图;资料收集与整理;编程脚本语言的选择;布局类型,例子:创建一个个人网站,站点名称为:我的个人网站。站点主要包括“myself,my friends和my favorite”三个版本的内容,站点首页定为index.html步骤指导:1、创建”testsite”文件夹作为站点根目录2、创建“resource”的子文件夹保存资源文件3、创建“myself,my friends和my favorite”三个文件夹保存个人、朋友、爱好的介绍4、创建“index.html”空白文件作为个人主页,