第3章商务逻辑层技术基础(电子商务技术基础-邮电部培.pptx
- 文档编号:30781680
- 上传时间:2023-09-07
- 格式:PPTX
- 页数:97
- 大小:767.10KB
第3章商务逻辑层技术基础(电子商务技术基础-邮电部培.pptx
《第3章商务逻辑层技术基础(电子商务技术基础-邮电部培.pptx》由会员分享,可在线阅读,更多相关《第3章商务逻辑层技术基础(电子商务技术基础-邮电部培.pptx(97页珍藏版)》请在冰豆网上搜索。
Page1,第3章商务逻辑层技术基础,商务逻辑层描述商务处理过程和商务规则,该层所定义的应用功能是电子商务应用系统开发的重点;提供辅助功能的通用软件,通过与其它软硬件的集成构成支持商务逻辑的商务支持平台。
电子商务系统的大系统特征,电子商务系统体系结构的演变,使得商务支持平台承担了大量的商务逻辑处理任务,不但导致应用软件规模和复杂度的增大,而且对系统硬件、网络等集成技术和系统管理都提出了更高的要求。
为此,从软件实现上,推动了基于部件的分布式系统开发方法和开发技术的应用和发展,从系统管理的需要出发,产生了应用服务器的思想。
3.1商务逻辑层概述3.2系统的开发方法3.3核心商务逻辑的实现3.4应用服务器相关技术,Page2,3.1商务逻辑层概述,3.1.1商务逻辑层与电子商务系统3.1.2电子商务系统及其开发3.1.3商务支持平台技术基础,Page3,电子商务系统的主要组成及功能,Page4,商务逻辑的实现要素,商务逻辑可以划分成两个层次,一个层次是企业的核心商务逻辑;另一层次就是支持核心商务逻辑的辅助部分。
一般的,企业的核心逻辑是依靠电子商务应用程序实现的,而辅助部分可以通过不同的技术产品来集成。
构成支持平台的技术产品至少应当包括:
Web服务器、商务支持软件、集成与开发工具、计算机主机、网络、其他系统软件(如操作系统、管理工具软件等)。
通常Web服务器、商务支持软件、部分集成开发工具被集中在一个称之为“应用服务器”的软件包中,商务逻辑层在物理上可以简化为以下三个部分:
应用软件(实现商务逻辑)、应用服务器(为应用软件提供软件支持平台)和其他支持软件、计算机主机及网络(为应用软件提供硬件支持平台)。
从实现上:
应用系统设计开发、应用平台的搭建和软硬件系统集成。
Page5,电子商务系统及其生命周期,Page6,电子商务系统的系统特征,Page7,电子商务系统开发技术的进展因素,系统开发基本原理软件工程信息系统开发电子商务系统特征,,Page8,商务支持平台技术基础,商务支持平台概述商务基础平台的功能提高系统性能,侧重于保障系统的效率、可靠性和优化商务服务平台的功能提供更多的商务服务,为企业的核心商务逻辑提供服务,Page9,应用平台的特性要求,一般而言,理想的应用平台应具备以下特征:
可靠的和高性能的:
支持商务逻辑的动态分布。
平台应当预置各种应用,提供多种服务。
例如内容管理、搜索工具等,提供多种开发工具,支持多种开发语言。
平台应当支持多种工业标准和操作系统平台,至少应当包括:
表达技术标准(HTML、WM、Java、Javascript、CC);标准协议(HTTP、LDAP、IIOP);应用集成:
JavaBean、EJB、CORBA;主流平台(Unix、WindowsNT);集成标准(JDBC、ODBC)。
易于管理。
平台是模块化的,各个部分是低耦合的,这样它具有通用性。
Page10,3.2电子商务系统开发及其技术基础,3.2.1电子商务系统开发技术基础3.2.2电子商务系统规划及其技术基础3.2.3电子商务系统分析及其技术基础3.2.4电子商务系统设计及其技术基础,Page11,3.2.1电子商务系统开发技术基础,1、软件工程与电子商务应用系统开发2、电子商务系统的开发过程分析,Page12,信息系统生命周期模型,Page13,系统分析、设计,Page14,3.2.2电子商务系统规划及其技术基础,电子商务系统规划的特点商务模型规划商务系统规划,Page15,电子商务系统规划的层次与目标,Page16,商务模型规划的基本过程,Page17,电子商务系统分析设计阶段示意图,Page18,面向对象与结构化方法,中医?
西医,Page19,常用简易分析方法,Page20,3.2.4电子商务系统设计及其技术基础,系统设计概述电子商务系统与分布式应用对象与可重用性部件与互操作性,Page21,
(1)分布计算,分布计算是指网络中两个或两个以上的软件相互共享信息资源。
这些软件可以位于同一台计算机中,也可以部署在网络节点的任意位置。
基于分布式模型的软件系统具有均衡运行系统负载、共享网络资源的技术优势。
网络技术的发展,网络计算、Internet的突起,使软件的开发从单一系统的完整性和一致性,向着群体生产率的提高、不同系统之间的灵活互连和适应性而发展,软件的非功能性需求比以往得到更大的重视。
从此,以主机为中心的计算方式转变为以网络为中心的计算方式。
但是,这一方面导致应用软件的功能、性能、规模和复杂性的极大增长,另一方面要求各种应用软件之间能够互相交互。
为此,系统集成成为重要课题,系统集成不仅包括不同厂商的网络、计算机平台之间的集成,更重要的是应用软件层次上的集成。
如图所示。
Page22,计算方式的重大变化,Page23,软件质量?
健壮性、维护性、重用性、扩展性,产品运行,产品转移,产品修改,可理解性可维修性灵活性可测试性,可移植性可再用性互运行性(能和另一个系统结合吗),正确性健壮性效率(性能)完整性可用性风险,软件工厂一万人做十年?
Page24,
(2)二进制代码级重用,程序=数据结构+算法(过程和函数),求解空间与问题空间割裂受编译器等限制平面结构,无层次,通用报表工具,Page25,面向对象源代码级重用,对象=属性+方法(封装),Publicclassprivatename;private;publicgetName();public;,无二进制链接标准无法跨语言、跨平台重用对象改变,重新链接编译,内部相关性外部耦合性,Page26,对象的基本机制,博大精深厚-薄-厚,Page27,类、对象、继承,Name:
BobSex:
MaleAge:
25Weight:
63Grade:
JuniorWhich-gradeHow-old,Page28,(3)可扩展性与互操作性,可扩展性:
功能、性能的扩充,特别是在分布环境中,各种应用软件的互操作性显得越来越重要。
互操作性:
两个或多个软件部件合作的能力,即使其实现的编程语言、接口及运行平台是在完全不同的情况下。
应用软件的使用者和开发者希望能象电子类产品部件的消费者和制造商那样即插即用各种应用软件,如:
电冰箱和供电服务-插头、插口、适配器、变换器等,由此产生了组件(Component)技术。
组件技术是提高大型软件可重用性的一种技术,其最基本的出发点是通过软件模块化、软件模块标准化,使大型软件可以利用一个个能够重复使用的“软件零件”进行组装,加快开发的速度,同时降低成本。
这一思想在软件工程中早就提出过,但是在技术和工艺方面的成熟则是近改甑氖虑椤,Page29,基于组件的重用、扩展、互操作,小的二进制可执行模块分布式处理要求:
存取透明、失败透明、位置透明、迁移透明、持久性透明、重定位透明、复制透明、提交透明。
面向对象语言无关位置透明动态链接,软件互操作分布式计算系统扩展性定制的灵活性减少维护成本,Page30,部件模型,部件模型由部件(component)与容器(container)两种主要成分构成。
部件通过其接口向外界提供功能入口,接口是部件内一组功能的集合,包含的是功能函数的入口,外界通过接口引用或接口指针来调用部件内的功能函数。
容器类似于装配车间,是一种存放相关部件的器皿,用于安排部件、实现部件间的交互,其形式也是多种多样的,如表格、页面、框架、外壳等。
另外,容器也可以作为另一容器的部件部件软件和Internet一起被列为目前软件产业两个重要的增长点。
软件部件的迅速发展使得基本部件装配应用开发模型成为一种深入到软件业的新的应用开发模式与开发环境。
Micorsoft的VisualBasic是一种非常典型的使用部件进行编程的工具。
Sybase公司的PowerBuilder,Borland公司的Delphi等。
它们将部件技术的功能不断扩展,成为非常流行的开发工具。
此外,许多大公司都先后开发出已被广泛使用的部件,如Micorsoft的VBX、OCX及ActiveX控件,Borland公司的Delphi中数据访问部件等。
SUN、IBM-BEANS。
Page31,部件模型与部件标准,Page32,基于部件的应用系统开发的组织,视图控制器模型应用内容页面内容和布局应用流程商业逻辑运行环境角色页面制作者应用组装者组件提供者WEB管理员部件HTML,JSP,ServletsJavaBeans,配置数据XML,AppletsJavaBeans,XMLEJB站点使用分析工具WebSphereWebSphereStudio,VAJAVAApplicationServerStudioStudioIBMConnectorsPerformancePackSiteAnalysisTools培训,Page33,3.3核心商务逻辑的实现及其技术基础,3.3.1电子商务应用系统实现概述3.3.2传统程序语言与公共网关接口CGI3.3.3基于ASP与Activex的系统开发3.3.4Java语言及其技术分析3.3.5PHP开发技术分析,Page34,3.3.1电子商务应用系统实现概述,电子商务系统与电子商务应用系统的实现电子商务系统的应用是基于Web的应用,是一种分布式的结构,所以开发工作可以分解成为客户端和服务器端的应用开发两部分。
由于电子商务系统的应用程序既包括编译型的程序,也包括解释型的脚本程序(例如JavaApplet、JavaScript、VBScript等),而这些脚本程序基本上都是嵌入到HTML页面中的,所以,应用程序的编写就不仅局限于编码,而且也包括HTML页面的编写。
借助于组件技术搭建应用日益成为未来电子商务应用开发与集成的主流方向。
Page35,开发语言的选择标准,平台无关性与其他部件的结合能力软件的可重用与数据库的连接能力语言使用的简易性,Page36,3.3.2传统程序语言与公共网关接口CGI,1、CGI工作原理2、用C语言编制的CGI程序3、CGI程序的输出处理4、CGI程序的输入,Page37,CGI工作原理,Page38,用C语言编制的CGI程序,voidmain()printf(Content-type:
text/htmlnn);printf(n);printf(用C编制CGI程序n);printf(n);printf(第一个CGI程序,这是用C编写的n);printf(n);,Page39,CGI程序的输出处理,Content-type:
text/html用C编制CGI程序第一个CGI程序,这是用C编写的,输出类型说明和HTML正文,Page40,CGI程序的输入-GET,通常情况下,CGI程序的输入是由客户端的窗体提交而产生的。
窗体的提交有POST和GET两种方式。
这两种方式提交资料的格式是不同的。
在HTML语法中,窗体提交时的默认方式为GET,当以此种方式交时,用户所提交的资料将以参数形式附在CGI程序名的后面,例如一个登录验证的HTML窗体中,当我们填好用户名和密码后点击“提交”按钮,则地址栏显示如下:
http:
/202.112.149.251/login.exe?
name=bluegenius&password=mypass当浏览器端以GET方提交资料时,在服务器端将自动生成一个环境变量QUERY_STRING,该参数记录的就是浏览器提交的资料,即“?
”后的部分,将该环境变量的值打印出来是这样的:
name=bluegenius&password=mypass,Page41,CGI程序的输入-POST,当窗体采用POST方式交资料时,其提交的资料则被加入到服务器端的标准输入stdin中,其参数的形式与GET基本相同,同时在服务器端生成一个环境变量:
CONTENT_LENGTH,该变量说明了浏览器提交的参数总长度,以便读入和分析参数时的控制。
上例中,当我们采用POST方式交时,将stdin中的内容打印出来,则为如下形式:
name=bluegenius&password=mypass可见,其参数的形式和意义与GET方式全相同。
无论窗体是以何种方式提交,所得到的参数串是完全相同的,下面要做的就是如何将该参数串拆解开,以获得各输入项的值。
基本思路为:
主程序首先调用CgiInit将用户提交的参数串读入到自定义缓冲区buff中,然后调用ParsePara将各参数拆解出来。
其余的几个则为辅助函数,主要用于将参数中的汉字转换为正确的形式。
因为在窗体提交过程中,无论采用何种提交方式,汉字都是被转换成为一个个的以“%”开头的16进制码,如%BC%4F等,每2个16进制码表示一个汉字。
当我们采用GET方式提交带有汉字的参数时,会在浏览器的地址栏中发现这些16进制码而不会找到一个汉字,就是这个原因。
将用户提交的参数拆解开后,就可以分析并处理这些信息,其过程与方法和普通的C程序是完全相同的,最后CGI程序输出处理结果,这就是一个CGI程序完整的处理过程了。
Page42,3.3.3基于ASP与Activex的系统开发,Page43,示例,这是一个测试程序!
这是一个测试程序!
这是一个测试程序!
这是一个测试程序!
这是一个测试程序!
这是一个测试程序!
Page44,ASP编程的基本规则,ASP编程首先要确定其使用的脚本语言。
ASP的编程可采用各种脚本语言,只要服务器端安装了相应的脚本引擎即可。
需要注意的是:
ASP本身有一定的语法规则,也可算作一种编程语言,而同时所使用的脚本语言自身还有一套语法,因此在编制ASP程序的过程中,必须同时遵守这两方面的语法规定才行,缺一不可。
一个ASP文件实际包含了两个部分:
HTML部分和ASP脚本命令部分。
其中,HTML部分与普通的HTML文件的语法规则是相同的;而ASP脚本则利用两种标记嵌入到HTML部分之中,在已有的HTML基础上对其输出实现控制。
Page45,ASP的内部对象,Page46,
(1)Request对象,可以使用Request对象访问任何基于HTTP请求传递的信息,包括从HTML表格用POST方法或GET方法传递的参数、Cookie、用户认证及服务器端变量等。
同时,Request对象还能够访问客户端发送给服务器的二进制数据。
Request对象主要有如下几种最常见的应用:
获取由POST方法提交的表单的各元素值Request.Form(element)(index)|.Count获取QueryString中各变量的值Request.QueryString(variable)(index)|.Count获取Cookie中变量的值Request.Cookies(cookie)(key)|.attribute获取服务器端环境变量值Request.ServerVariables(Name),Page47,示例,编制页面,用户提交信息该表单的提交项定义如下:
处理后,回显给用户,Page48,为处理表单数据的ASP文件:
ShowInfo.asp,NewPage1您提交了如下信息:
姓名:
性别:
籍贯:
0)%您的爱好共有项:
0;n-)%您没有什么特别的爱好。
Page49,
(2)Response对象,与Request对象正相反,Response对象是用来控制发送给用户的信息,包括直接发送信息给浏览器、重定向浏览器到另一个URL或设置Cookie的值等。
设置Cookie的值Response.Cookies(cookie)(key)|.attribute=value设置Web页面保留在客户端浏览器缓冲中的时间Response.Expires=valueResponse.ExpiresAbsolute=value向浏览器输出信息Response.Write(String)重新定向URLResponse.Redirect(URL)Response.Redirect(”http:
/bluegenius.dhs.org”),Page50,(3)Application对象,下面是一个计数器程序,也是一个比较典型的Applicatio对象的应用方法。
计数器示例您是第位来客!
Page51,(4)Session对象,Session对象存储特定的用户会话所需的信息。
当用户在应用程序的页之间跳转时,存储在Session对象中的变量不会清除,而用户在应用程序中访问页面时,这些变量始终存在。
要注意的是,会话状态仅在支持Cookie的浏览器中保留,如果客户关闭了Cookie选项,Session也就不能发挥作用了。
例如下面例子:
在Session中建立了Name和Password两个变量,在以后由其直接或间接链接而出的网页中(注意:
必须是直接或间接链接而出的一组网页才构成一组对话)就可通过如下语句获得用户名和密码:
之后,就可以用这个用户名和密码进行身份校验了。
Page52,3.3.4Java语言及其技术分析,Java是SUN公司与1990年开始,为消费者电子市场,如电视机、电话、烤面包机等家用电器的控制和通讯,而设计的软件。
设计小组最开始使用C+,但是它在在消费者使用的各种硬件架构及对稳定的要求上却产生了问题,于是这个小组开发了一种新的语言,并为它命名Java。
这个名称并不是某个简称,而是指设计人员们所喜欢的又热又香醇的咖啡,更重要的是,它包含了激发这个技术的要素:
活波、动画、速度、互动以及其他会选择Java的可能因素。
而今天,它已经成为Internet上的配送工具。
Page53,
(1)Java是编程语言,特点:
简单可靠,是面向对象、与平台无关的,具有可移植性,安全性好,并且支持多线程,具有很高的性能;其次,它最大限度地利用了网络,Java小应用程序可在网络上传输而不受计算机和操作系统的限制。
Java既可以被编译,也可以被解释。
通过编译器,可以把Java程序翻译成一种中间代码(字节码)可以被Java解释器解释的独立于平台的代码。
通过解释器,每条Java字节指令被分析,然后在计算机上运行。
Page54,
(2)Java是平台,平台是程序运行的硬件或软件环境。
Java平台与大多数其他平台的不同之处在于,它是运行于其他硬件平台的纯软件平台,而大多数其他平台是硬件和操作系统的结合。
Java平台由Java虚拟机(JavaVirtualMachine,简称JVM)和Java应用程序接口(JavaAPI)两部分组成。
JVM是Java平台的基础。
JVM发挥抽象计算机的作用,在Java应用程序和本机系统之间建立了一个绝缘层,屏蔽掉了硬件和操作系统的不同,使Java程序“编写一次,任意运行”。
可以把Java字节码看作运行在JVM上的计算机代码指令。
每种Java解释器,不管是Java开发工具还是可以运行Java小应用程序的Web浏览器,都是JVM的实例。
JavaAPI由多种Java包(package)组成,它们提供了很多有用的功能。
如java.awt是窗口工具包,可以用来创建图形用户界面(GUI);java.io用来实现输入输出处理;java.sql即JDBC包,包含了实现数据库连接的一系列类和接口。
图62描述了一个运行在Java平台上的Java程序,如应用程序(Application)或小应用程序(Applet)。
图中,JavaAPI和JVM把Java程序从硬件依赖中分离出来。
Page55,(3)Java应用程序,/Thisclasssimplydisplays”HelloWorld”tothe/standardoutputclassHelloWorldAPPPublicstaticvoidmain(String,args)System.out.println(”HelloWorld!
”);,Page56,(4)Java小应用程序,Java小应用程序是动态、安全、跨平台的网络应用程序,Java语言迅速流行的重要原因也正在于此。
JavaApplet不能独立运行,需要嵌入在HTML页面中,通过浏览页面来执行。
Page57,3、构建多层应用软件体系结构的Java技术,在构建多层应用软件体系结构时,选用Java平台是一个非常好的选择,而实现多层结构需要使用的关键技术和运行环境主要有:
客户层:
JavaApplet编程技术,运行环境为支持Java的浏览器或可以直接运行Java程序的计算机(例如网络计算机)。
顶端Web服务层:
JavaServlet编程技术、JSP技术、RMI技术和JavaBean编程技术,运行环境为使用Java语言编写的Web服务器(起代理服务器作用)。
应用服务层:
JavaServlet编程技术、RMI技术、JDBC技术和JavaBean编程技术,运行环境为使用Java语言编写的Web服务器。
Page58,J2EE标准,Page59,
(1)JavaBeans,JavaBeans描述了基于Java的软件组件模型,JavaBeans规范将“组件软件”的概念引入到Java编程的领域。
组件是自含的、可重用的软件单元;而JavaBeans组件,则可以使用可视的应用程序开发工具,可视地将它们编写到Java程序中。
JavaBeans规范为Java开发人员提供了一种“组件化”其Java类的方法。
如果软件重用是一个好主意,那么是否应该让每一个Java类都成为Javabean呢?
如果Java类满足某些准则,它们就适于充当bean的角色:
如果软件模块要既能够可视地操作,又能够定制以达到某些效果,则这种软件模块就可能适于做成一个JavaBean。
是否打算让它可重用?
或者,它会是可重用的吗?
是否希望将它与其他可重用的Java组件一起使用?
是否预计会在IDE工具中使用它?
如果上述问题的答案都是肯定的,则它应该作为JavaBean来开发。
JavaBean概念是为了在Java编程环境中支持可重用的组件,它是一种一般性的设计方法,适用于客户机或服务器机器上运行的Java程序。
由于对可视的构建器工具的强调,也由于许多Javabean都是图形用户界面(GUI)组件,所以JavaBean组件可能被视为一种客户端技术。
但是,并不要求Javabean都是可视的,并且它们也可以用于服务器环境中。
Page60,
(2)EJB(Enterprisejavabean),是JAVA中的商业应用组件技术,是分布式应用系统中的组件。
EJB组件模型在逻辑上扩展了JavaBeans组件模型,以支持服务器端组件。
服务器端组件是可重用的,预先包装好的,准备在应用服务器上运行的应用程序功能片段。
它们可以和其他组件组合在一起创建一个符合要求的应用系统。
与JavaBeans组件有很多相似的之处,但是JavaBeans组件一般粒度更大而且功能更完全,而且EJB组件不能像JavaBeans组件那样在Java集成开发环境中使用。
相反,通过使用由遵循EJB的Java应用服务器提供的工具,它们可以在部署阶段被装配和定制。
EJB模型定义了EJB组件与EJB容器之间相互关系。
EJB组件不需要使用任何特定的容器系统。
提供商可以将任何应用服务器端调节为支持EJB技术,只需加入规范定义的一些服务的支持即可。
这些服务定义了EJB组件和容器之间的“契约”,有效地实现了一个可移植层。
任何EB组件可以在任何支持EJB契约的应用服务器上运行。
一个EJB组件可被部署到任何一个EJB服务器,即使不同的服务器通过不同的方式实现它们的服务。
EJB模型使用EJB容器与EJB组件之间的一组标准契约确保了EJB组件在不同EJB服务器上的可移植性。
每一个EJB组件都被要求实现一组特定接口,允许EJB容器管理和控制该对象。
EJB容器也被要求在特定的执行阶段调用此接口。
Page61,EJB的分布式计算结构中的六个角色,六个角色可以由不同的开发商提供,每个角色所作的工作必须遵循Sun公司提供的EJB规范,以保证彼此之间的兼容性。
EJB组件开发者:
应用组合者:
部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 商务 逻辑 技术 基础 电子商务 邮电部
![提示](https://static.bdocx.com/images/bang_tan.gif)