版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3.1 商务逻辑层的构成 商务逻辑层可以分为两大部分:一部分是构成商务应用的核心商务逻辑,与具体的企业应用密切相关;另一部分是支持核心商务逻辑运行的软硬件环境。,3.2 应用服务器 通常,将Web服务器、部分的商务服务平台软件、商务支持平台软件、基础支持平台软件中的部分集成与开发工具,集中在一个称为应用服务器的软件包中 ; 商务逻辑层在物理上可以简化为三个部分:核心商务应用、应用服务器、其它支持的软硬件 ; 应用服务器为处理大量的用户与事务提供了一个更为结构化的解决方案;不但如此,应用服务器还能提供诸如负载均衡、线程池和服务恢复、Web服务等特性,为分布式的电子商务应用打下了良好基础 。,3.
2、2 应用服务器 3.2.1 应用服务器的技术演变 基于CGI的应用服务器 在Web服务器的基础上,添加了运行CGI(公共网关接口,Common Gateway Interface)程序的功能 ; 其基本特征是将HTML代码嵌入到相关的程序代码中; 通过CGI,Web服务器能将用户从浏览器中送来的数据,交给CGI程序进行处理,并能将处理的结果再传给浏览器。 工作过程:,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于CGI的应用服务器 示例(用C语言编写的一个简单CGI程序 ) #include stdio.h #include stdlib.h void main() char *s
3、tr1,*str2; printf(Content-type:text/htmlnn); printf( n); printf( 用C编制CGI程序 n); printf( n); printf( 第一个CGI程序,这是用C编写的 n); str1 = getenv( QUERY_STRING ); str2 = getenv( ACCEPT ); printf(query_string:);printf(%s,str1);printf(n); printf(accept:);printf(%s,str2);printf(n); printf( n); ,3.2 应用服务器 3.2.1 应用服
4、务器的技术演变 基于CGI的应用服务器 缺点 CGI程序是将HTML标识嵌入在传统的程序设计语言中,而不像JSP、ASP那样将控制代码嵌入在HTML标识中。所以在CGI程序中,如果要改变HTML的内容,就需要直接修改CGI程序,维护工作变得非常复杂; CGI存在严重的扩展性问题。每个CGI程序在服务器上执行都会产生一个进程,进程需要占用系统资源,当多个用户并发地访问CGI程序时,产生的多个独立的进程将会耗费服务器上的大量资源,严重时甚至用尽服务器资源,导致系统瘫痪。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于ASP的应用服务器 基于ASP的应用服务器,不但致力于克服CGI的缺点
5、,而且还提供了集成开发的工具和相关的实用组件,通过使用ActiveX控件来实现相关的核心商务逻辑功能,使开发和发布动态网页变得十分容易 。 在IIS系统中,ASP利用“插件”和API简化了Web应用程序的开发 。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于ASP的应用服务器 优点:ASP代码可以直接放在HTML中,程序编制具有灵活性,可以直接存取数据库及使用功能可以无限扩充的ActiveX控件。 缺点:只能运行在微软的操作系统平台上,不能或很难实现跨平台的Web服务器程序开发;同时ASP自身还存在安全问题。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于Java的应
6、用服务器 优点:Java具有跨平台性,利用Java来构筑服务器端的应用,不管是在NT、UNIX上还是在其他的主机系统上都能运行;利用互联网、中间件和分布对象等新功能,能将Java应用配置在多个结点上,实现负载平衡;另外,Java应用还具有安全的特性。 Servlet :把HTML内容嵌入在Java程序中,工作原理和CGI有很多相似 ,但与平台无关,且内部是以线程的形式提供服务。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于Java的应用服务器 JSP :把Java程序嵌入在HTML文件中;或为了降低代码管理和程序调试的复杂度,将HTML代码和Java代码分离,采用JSP+Bean
7、的形式。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于Java的应用服务器 JSP+Servlet+JavaBean :JavaBean主要实现业务逻辑处理,JSP主要实现页面的构建,Servlet主要是实现与用户的交互及控制功能,即接受用户的请求,控制JSP来产生响应。,3.2 应用服务器 3.2.1 应用服务器的技术演变 基于Java组件和应用服务的应用服务器 使用以EJB为中心的服务器端的组件技术,组件与服务是构建分布式应用的关键技术 ; 应用服务器具备了三方面的技术: 开发环境。能创建新组件、并能将已有组件加以集成; 应用程序的集成。能集成传统的应用程序和新型应用程序;
8、应用程序的配置。由于Web应用程序是分布式地,其组件运行在不同的服务器上,并且有大量的用户对其进行访问,因此需要配置平台的支持,以便在用户剧增时能有效地扩展,并保持系统的稳定。,3.2 应用服务器 3.2.1 应用服务器的技术演变 今后的发展方向 应用服务器技术正朝着面向服务的方向发展,朝着集成化、可扩展的方向发展。 一方面,应用服务器会集成越来越多的功能,有的功能是应用服务器厂家自己开发的,有的是第三方开发的,它们组成了一个统一的整体; 另一方面,应用服务器又向着兼容多种技术标准(如CORBA,DCOM,EJB,RMI,XML、Web Service等)的方向发展,可在多个平台上运行,能连接
9、多种不同的数据库(如Oracle,Sybase,DB2,SQL server,informix,MySql等)。,3.2 应用服务器 3.2.2 应用服务器的产品类型及开发工具,3.2 应用服务器 3.2.3应用服务器的基本功能 提供高性能的应用程序运行环境 内容缓存 数据库连接缓存 支持进程的多线程执行 大量用户访问情况下的负载均衡 提供可扩充性 服务器集群技术 、多CPU系统 、负载均衡 提供会话管理 提供目录及内容管理 提供商务引擎 提供系统管理 性能配置管理 、存取控制管理 、系统日志管理,3.2 应用服务器 3.2.4 应用服务器的安装 Tomcat的安装与配置 预先安装好JDK1.
10、2以上版本的Java; 安装并安装Tomcat /builds/jakarta-tomcat-4.0/release/v4.0.1/bin/jakarta-tomcat-4.0.1.exe 配置 运行Tomcat之前,需要正确的设置JAVA_HOME、CLASSPATH、CATALINA_HOME及PATH这四个环境变量: set JAVA_HOME=c:jdk1.4 ; set CLASSPATH=c:jdk1.4lib ; set CATALINA_HOME=c:tomcat4.1 ; set PATH=c:jdk1.4bin;%path%
11、;,3.2 应用服务器 3.2.4 应用服务器的安装 Tomcat服务测试,3.2 应用服务器 3.2.4 应用服务器的安装 Tomcat应用配置 为了使Tomcat符合自己的特定应用,在布置之前,常常需要修改Tomcat中的一些配置信息。Tomcat的配置信息主要放在confserver.xml文件中 。,3.3 中间件与组件的开发 3.3.1 中间件与组件 在大型的电子商务系统中,通常存在多种硬件系统平台,在这些硬件平台上又存在各种各样的电子商务应用软件以及多种风格各异的用户界面,这些硬件系统平台还可能采用不同的网络协议和网络体系结构来进行连接。如何把这些系统(即所谓的异构系统)集成起来并
12、开发新的应用是一个非常现实而困难的问题。为了解决这些问题,人们提出了中间件(middleware)的概念。 中间件是位于平台(硬件和操作系统)和应用之间的通用服务,这些服务具有标准的程序接口和协议。标准的程序接口和协议定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,电子商务的应用软件几乎不需要任何修改,就能实现系统的升级。,3.3 中间件与组件的开发 3.3.1 中间件与组件 中间件类型 远程过程调用(Remote Procedure Call) 面向消息的中间件(Message-Oriented Middle
13、ware) 对象请求代理(Object Request Brokers) 面向服务的中间件(Service-Oriented Middleware) 组件:是实现中间件最有效的技术手段。组件规范描述了开发可重用组件及组件间相互通信的标准。按照组件规范,通过重用已有的组件,电子商务的开发者就可以像搭积木一样快速地构造自己的中间件,不仅节省时间和经费,提高工作效率,而且产生的中间件更加规范、更加可靠。,3.3 中间件与组件的开发 3.3.1 中间件与组件 组件技术类型 OMG(对象管理组object management group)的CORBA(Common Object Request Bro
14、ker Architecture) Microsoft的ActiveX/DCOM (Distributed Compound Object Model) SUN公司的JavaBean/EJB/RMI 基于XML/Web Service Web Server是最近制定的一组标准,目的是利用成熟的Web技术,通过SOAP协议、WSDL服务描述语言和UDDI统一描述发现集成协议来实现跨语言(RMI要求处理两端都是Java环境)、跨平台(DCOM要求处理两端为windows平台,CORBA要求处理两端为同一个ORB)、跨网络之间的分布处理与组件应用。,3.3 中间件与组件的开发 3.3.2 JeanB
15、ean与JSP Bean是一个基于Sun公司的JavaBean规范的、可在编程工具中被可视化处理的可复用的软件组件”。因此JavaBean具有4个基本特性:独立性、可重用性、在可视化开发工具中使用和状态可以保存。 JavaBean分成可视组件和非可视组件。在JSP中主要使用非可视组件,对于非可视组件,主要关心它的属性和方法。 JavaBean就象ActiveX控件,但与ActiveX相比,JavaBean真正实现了代码的可重用性,不过分依赖于处理平台和开发语言。 从本质上讲,javaBean组件就是java类,只不过javaBean的结构必须满足一定的命名约定,属性必须具有set和get的方法
16、。一个完整的JavaBean在类的命名上需要遵守4项规定: 1)如果类的成员变量的名字是xxx,那么为了更改或获取成员变量的值,在类中使用方法getXxx(),来获取属性xxx;使用方法setXxx(),来修改属性xxx; 2)对于boolean类型的成员变量,允许使用is代替get和set; 3)类中方法的访问属性必须是public的; 4)类中如果有构造方法,那么这个构造方法也是public的,并且是无参数的。,3.3 中间件与组件的开发 3.3.2 JeanBean与JSP JavaBean示例(中间件) package company; public class userBean pu
17、blic String useName; public int myID; public userBean() myID=1001;useName=zahnghz; public String getname(int ID) if(ID=this.myID) return useName; else return new String(No such man); public int getID() return myID; public void setID(int InID) myID=InID; 编译此文件后,将会生成一个名为userBean.class类文件,将此文件拷贝到Tomcat
18、服务器的webappsROOTWEB-INFclassescompany目录下(这里需要自己在webappsROOTWEB-INFclasses目录下新建一个子目录company);然后在webappsROOT目录下生成一个名为userbean.jsp的JSP网页文件来调用此中间件。,3.3 中间件与组件的开发 3.3.2 JeanBean与JSP JSP网页文件调用JeanBean中间件, Name , Using Bean Using Bean ID: ,3.3 中间件与组件的开发 3.3.2 JeanBean与JSP JSP网页文件调用JeanBean中间件 在JSP中可以通过JSP指令
19、来访问它的各种属性。JSP指令是一种特殊标记,用来表示,用于控制JSP引擎的动作。在JSP中共有以下6种JSP指令,其中后三种专用于JavaBean。 ,3.3 中间件与组件的开发 3.3.2 JeanBean与JSP JSP网页文件调用JeanBean中间件 指令在JSP中的语法格式: /,3.3 中间件与组件的开发 3.3.2 JeanBean与JSP JSP网页文件调用JeanBean中间件 使用标记来得到一个JavaBean属性的值 使用标记改变JavaBean的属性 /,3.4 EJB组件的开发 3.4.1 EJB组件简介 EJB(Enterprise JavaBean)是J2EE中
20、的核心技术,EJB不是一个产品,而是Java服务器端服务框架的规范。软件厂家可根据它来编程实现EJB服务器;,3.4 EJB组件的开发 3.4.1 EJB组件简介 Sun在发布EJB2.0中对EJB的定义: EJB是用于开发和部署多层结构的、分布式的、面向对象的Java应用系统的跨平台的组件体系结构。采用EJB可以使开发商业应用系统变得容易,应用系统可以在一个支持EJB的环境中开发,开发完之后部署在其他支持EJB规范的服务器平台上的环境中,随着需求的改变,应用系统可以不加修改的迁移到其他功能更强、更复杂的服务器上,并且具有可扩展性、交互性、多用户安全特性。 EJB是部署在服务器上的可执行组件或
21、商业对象 ; EJB是设计成运行在服务器上,并由客户机调用的非可视远程对象 ; EJB和JavaBean的区别是:如果用JavaBean创建服务器端应用程序,需要设计整个的服务框架。在多层结构的分布式应用中,服务框架的实现是非常烦琐的,对于EJB来说,服务框架已经提供,因此大大简化了系统的开发过程。EJB组件总是分布式的,这是他们与标准JavaBeans组件最根本的区别。,3.4 EJB组件的开发 3.4.2 EJB中的角色 EJB组件开发者(Enterprise Bean Provider) 应用组合者(Application Assembler) 部署者(Deployer) EJB服务器提
22、供者(EJB Server Provider) EJB容器提供者(EJB Container Provider) 系统管理员(System Administrator),3.4 EJB组件的开发 3.4.3 EJB的类型 会话Bean 实体Bean 消息驱动Bean,3.4 EJB组件的开发 3.4.4 EJB开发步骤 服务器端的开发 设计特定业务接口 配置EJB的部署描述器 部署应用程序 客户端的开发,3.5 面向服务的系统开发 3.5.1 面向服务的系统架构及其特征 信息系统(包括电子商务系统)的软件开发,从最初的面向过程、面向对象,到后来的面向组件、面向集成,直到最近的面向服务架构(SO
23、A,Service-Oriented Architecture),走过了一条螺旋上升的曲线。 一般认为:SOA是一个组件模型,它将应用程序的不同功能单元即服务(service),通过服务间所定义的接口和契约(contract)联系起来。接口采用中立的方式定义,独立于具体实现服务的硬件平台、操作系统和编程语言,使得构建在这样的系统中的服务可以使用统一和标准的方式进行通信。 它是一种软件系统架构 服务是整个SOA实现的核心,3.5 面向服务的系统开发 3.5.1 面向服务的系统架构及其特征,3.5 面向服务的系统开发 3.5.1 面向服务的系统架构及其特征 SOA特征: 服务的封装 服务的重用 服务的互操作 服务是自治的 服务之间的松耦合度 服务是位置透明的,3.5 面向服务的系统开发 3.5.2 Web服务(Web Service) Web服务是目前用来实现SOA的技术集合。其所涉及的技术主要有: 1)XM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 痛风性关节炎全程管理知识
- 吉林四平市双辽市2025-2026学年下学期期末质量验收八年级历史试题-文字版-含答案-
- 3T MR功能成像:开启肝纤维化精准诊断新时代
- 3D打印木塑夹层结构性能剖析及家具设计创新应用研究
- 3-甲基腺嘌呤(3-MA)对肝纤维化预防作用的实验与机制探究
- 220kV变电站主变中性点小电抗接地运行的多维度解析与优化策略
- 2008年联邦·高登家私公司营销计划:挑战与机遇下的战略布局
- 混凝土、模板、钢筋施工方案
- 医疗器械知识考试题及答案
- 医疗廉洁风险点及防控措施
- 2026江苏南通市海门区招聘区镇(街道)专职安全巡查员第二批49人考试参考题库及答案详解
- 2025-2026学年门头设计教学课程
- 北京四中2026高一数学分班考试真题含答案
- 2026版《煤矿安全规程》机电运输章节变化深度解读与实施指南
- 2026年中原银行人员招聘笔试参考试题及答案详解
- 四川省水利工程设计概(估)算编制规定2025
- 新疆2026年事业单位A类笔试真题及答案解析
- XJJ013-2012 新疆维吾尔自治区城市规划管理技术规定
- 代办社保委托协议书范本
- 一线三等角形相似课件
- 深度解析(2026)《NBT 10609-2021水电工程拦漂排设计规范》
评论
0/150
提交评论