的概念与体系结构演示文稿_第1页
的概念与体系结构演示文稿_第2页
的概念与体系结构演示文稿_第3页
的概念与体系结构演示文稿_第4页
的概念与体系结构演示文稿_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

的概念与体系结构演示文稿当前1页,总共84页。优选的概念与体系结构当前2页,总共84页。1.什么是J2EE?J2EE是什么?J2EE用来做什么?J2EE的发展过程?当前3页,总共84页。从应用开发的角度看信息技术和电子商务的快速发展以及对它们的需求给应用程序开发人员带来了新的压力。

须以更少的资金、更少的资源来更快地设计、开发企业应用程序。J2EE平台提供了一个基于组件的方法来加快设计、开发、装配及部署企业应用程序。当前4页,总共84页。从Java语言的发展看Java语言产生与发展Sun的创立者提出“网络就是计算机”的独特理念。95.5Sun公司推出Java技术。10多年来,已发展成为全球第一大软件开发平台。Java是长时间以来最卓越的程序语言。(BillGates)

当前5页,总共84页。从Java语言的发展看2000年左右,为了进一步开发基于Web的应用,出现了SunONE体系结构,以Java语言为核心,包括J2SE、J2ME、J2EE和一系列标准、技术及协议。与同类Microsoft公司的.Net相比,SunONE更接近或更能满足互联网在智能化Web服务方面对开放性、分布性和平台无关性的要求。当前6页,总共84页。从Java语言的发展看J2EE(Java2Platform,EnterpriseEdition—Java2平台企业版),是使用Java进行企业级应用系统开发的一套扩展标准,必须基于J2SE。当前7页,总共84页。J2EE是什么J2EE是一套使用Java进行企业级Web应用开发的事实上的工业标准。J2EE是一种平台规范,该平台提供了一套基于组件的方法来设计、开发、装配及部署企业应用。J2EE平台提供了多层分布式的应用模型、重新利用组件的能力、统一安全的模式以及灵活的处理控制能力。当前8页,总共84页。J2EE带来的效果通常的瘦客户端多层次应用程序难于编写,因为它们要设计多行复杂代码,用于处理事务、状态管理、多线程、资源池以及其它复杂的低层细节。当前9页,总共84页。J2EE带来的效果基于组件和独立于平台的J2EE体系结构使得应用程序容易编写业务逻辑被组织成可重用的组件。J2EE服务器以针对每种组件类型的容器形式提供低层服务,可以集中精力解决手边的业务问题。当前10页,总共84页。J2EE的发展90年,Sun公司JamesGosling领导的小组设计了一种平台无关的语言Oak,用于为各种家用电器编程。95.1,Oak改名为Java,5.23Sun正式发布Java。96.2,Javabeta版结束,Java1.0诞生。97.2,Java发展到1.1版。当前11页,总共84页。J2EE的发展99.7,重新组织Java平台的集成方法,升级到1.2版;Java从一种语言发展成为一种开发平台,并将Java企业级应用开发平台作为发展方向,出现了SunONE和Java平台的三个版本J2SE、J2ME和J2EE。当前12页,总共84页。J2EE的发展2000.9,Java升级到1.3版,J2XE1.3。2001.7,Java升级到1.4版,J2XE1.4。2005年8月,Java升级到1.5版,SUN的伙伴们将J2EE1.5改名为javaEE5,以前J2EE版本还是称为J2EE。当前13页,总共84页。J2EE的发展目前的产品,J2SDK1.5(Java5.0)正式版和java6.0beta版可用。JavaEE5.0的规范由SunMicrosystems于11/18/05年发布。当前14页,总共84页。2.J2EE的框架J2EE包含什么?J2EE的框架和特点是什么?框架中主要技术。当前15页,总共84页。J2EE包含什么企业应用复杂性导致J2EE包含内容的复杂性。J2EE包括JSP,Servlet,JNDI,RMI,JDBC,EJB,JMS,JavaMail,JMX,JTA,JCA等规范。

当前16页,总共84页。J2EE的框架JavaTM平台中各元素之间的必要关系如图EE.2-1所示。注意,图中所示为元素之间的逻辑关系,并不是说将各元素物理划分到不同的机器、进程、地址空间或虚拟机中。当前17页,总共84页。EE.2-1JavaEEArchitectureDiagram当前18页,总共84页。J2EE的框架符号释义矩形表示容器。

表示应用程序组件。格子表示容器提供的服务。箭头表示对部件的访问。客户端容器通过JDBCAPI为客户端应用程序提供对数据库的直接访问。J2SE为每种应用程序组件提供服务,服务的APIs都由J2SE运行时环境支持(jre)。当前19页,总共84页。J2EE的框架JavaEE应用程序组件客户端应用程序。

Applets。

Servlets,JSP页面,JSF(JavaServerFaces)应用程序,过滤器和Web事件监听器。企业JavaBeans™(EJB)组件。当前20页,总共84页。J2EE的框架容器容器是JavaEE的运行环境,这种环境是为应用组件服务的。各容器为相应类型的应用程序组件提供底层服务,如各矩形下半部的格子表示。当前21页,总共84页。J2EE的框架四类容器

EJB容器

Web容器

ApplicationClient容器

Applet容器

当前22页,总共84页。JAFStAXJAXRSAAJJACC当前23页,总共84页。当前24页,总共84页。当前25页,总共84页。当前26页,总共84页。J2EE的框架JavaEE服务器

JavaEE服务器为适合的应用程序组件提供配置、管理和运行支持。注意区分Web服务器和应用服务器,如Tomcat与Jboss。

当前27页,总共84页。J2EE的框架

JavaEE服务器与容器之间的关系服务器是JavaEE容器基础,容器是它的一部分。

当前28页,总共84页。J2EE的框架资源适配器资源适配器是一个系统级的软件组件,它主要实现到外部资源管理器的网络连接。当前29页,总共84页。J2EE的框架JavaEE标准服务

每种容器提供相应的服务,如邮件服务、消息服务、安全服务、连接器提供的服务等,对每种服务都有相应的规范。当前30页,总共84页。J2EE的特点J2EE本身复杂,实现技术多样。集成现有的企业信息系统。提供可扩展性等。当前31页,总共84页。J2EE规范简介J2EE是Sun公司推出的一种全新概念模型。当前32页,总共84页。J2EE规范简介(续)服务由分布的应用程序组成,包括前端数据端和后端数据源以及它们之间的一层或几层。J2EE正是降低了开发这种中间层服务的成本和复杂程度。当前33页,总共84页。J2EE规范简介(续)J2EE是一种规范,为软件开发生命周期制定了许多规则,使编码标准化,包括:设计企业应用

把角色分配给与开发软件(规划与产品)有关的人

应用打包

把用于J2EE的技术标准化

把不同的技术之间的交互标准化

为Java应用服务器提供了一个标准

当前34页,总共84页。J2EE技术简介J2SE不支持服务器端部署。企业API

为服务器端部署提供企业级服务。J2EE是用于在分布式环境中开发、部署和执行应用程序的体系结构。当前35页,总共84页。J2EE技术简介(续)J2EE包括JSPJavaServlet企业JavaBean(EJB)Java远程方法调用和RMI-IIOPJava命名和目录接口(JNDI)Java数据库连接(JDBC)

当前36页,总共84页。J2EE技术简介(续)J2EE包括Java事务API(JTA)和Java事务服务(JTS)Java消息传递服务(JMS)JavaIDLJavaMail连接器可扩展标记语言(XML)等当前37页,总共84页。J2EE技术简介(续)客户端技术包括Javaapplets和客户端应用程序(这些也包括HTML和XML文件)。组件技术被用来创建商业组件,这是应用最重要的部分。包括Servlets、JSP和EJB三种技术。当前38页,总共84页。J2EE技术简介(续)服务技术提供必要支持,确保组件能发挥充分作用。通信技术HTTP、HTTPS、RMI等。当前39页,总共84页。组件技术软件组件是实现明确定义接口的代码。组件不是完整的应用程序。企业JavaBean(EJB)是可以立即部署的组件,它定义可部署组件的组件体系结构。组件在J2EE规范中有更广泛的含义——组件是应用级的可重用单元。当前40页,总共84页。组件技术(续)

一个符合J2EE规范的产品必须支持四种类型的组件客户端应用——一般的胖客户端Java应用,使用RMI访问应用服务器。Applets——可视化客户端,在网络浏览器之内执行。Servlets和JSP——使在HTML、XML和其它网络语言中,加入动态的内容成为可能。EnterpriseJavaBeans——在应用服务器的容器中执行的组件,封装和管理商业逻辑。当前41页,总共84页。组件技术——EJB简介EJB结构是一种分布式的组件模型,用来开发安全的、可扩展的、事务性的、多用户的组件。

EJB是一些包含业务逻辑的可重用的软件单元。EJB有两种形式:会话Bean和实体Bean。当前42页,总共84页。组件技术——EJB简介(续)EJB允许把应用逻辑从系统级服务中分离出来,让开发者的精力集中在商业领域的问题上,而不是系统级的程序设计上。当前43页,总共84页。组件技术——容器简介容器是一种J2EE运行时组件,它管理不同的应用组件,并且允许对J2EEAPI的访问。每个组件都活在容器里,容器为组件提供运行时服务。

当前44页,总共84页。组件技术——容器简介(续)容器执行下述的任务

装载组件

提供事务服务

提供安全管理

提供对必要环境变量的访问

对象实例池

管理状态

当前45页,总共84页。组件技术——容器简介(续)在J2EE体系中,有不同类型的容器Applet容器客户应用容器Web容器

装载JSP和Servlet应用组件,这些组件实现了Web客户需要的功能。EJB容器装载实体Bean、有状态Bean、无状态Bean、消息Bean。当前46页,总共84页。组件技术——容器简介(续)J2EE容器的体系结构分成四个部分

组件约定为了让组件能够在容器运行环境中被管理,应用组件必须遵守容器定义的某种约定。容器服务APIJ2EE平台规范定义了一套每个具体的J2EE平台都必须支持的Java标准扩展接口。Java容器提供了服务级的API抽象。当前47页,总共84页。组件技术——容器简介(续)J2EE容器的体系结构分成四个部分

声明服务具体的实现方式称为部署。部署定义了容器和组件之间的结构约定,要为每组应用组件定义一个部署。

其它的容器服务对组件生命周期的管理、集群技术等。

当前48页,总共84页。组件技术——EJB容器简介编写EJB组件的主要目的就是为了利用EJB容器所提供的服务,包括

持续化声明性事务数据缓存声明性安全性错误处理业务逻辑的组件框架伸缩性与错误修复可移植性可管理性当前49页,总共84页。组件技术——EJB容器简介(续)EJB容器的作用负责管理EJB为EJB提供运行时环境为EJB提供系统级服务作为客户端和EJB之间的中间件当前50页,总共84页。服务技术

服务技术包含下述内容JDBCJDBC2.x应用程序接口包括两部分——2.x核心应用程序接口(java.sql包)和JDBC2.x可选的应用程序接口包(javax.sql包)。Java事务API(JTA)和服务。

Java名字和目录接口JNDI

提供了名字服务,把一个名称与一个对象相联系,这样能使用指定的名称定位对象。

当前51页,总共84页。容器服务事务管理事务是多个组件参与分布式对象操作的安全方式。安全性验证用户是否能够执行某种任务。

远程可访问性EJB容器使用Java远程调用(RMI)接口实现远程可访问性。数据库连接池管理数据库连接池。资源管理和Bean生命周期管理控制所部署的企业Bean组件的生命周期。

当前52页,总共84页。通信技术

通信技术使得J2EE应用中的组件和服务彼此通信,它是重要的组成部分Internet协议主要指TCP/IP协议族HTTP协议。安全套接字协议(SSL)当传送重要信息时,它将数据加密后在网络上传送。

远程对象协议主要用于分布式应用中,这使组件分散在多个服务器上,彼此之间采用远程对象协议来通信。包括RMI、RMI-IIOP、Java接口定义语言即IDL、JMS、JavaMail。

当前53页,总共84页。通信技术(续)J2EE平台通过不同的方式与外界通信

应用程序接口。定义了应用组件和J2EE平台之间的接口。

网络协议。一般采用HTTP(或者HTTPS)、RMI和外界应用交互。

部署描述。采用XML语言,描述J2EE应用行为和配置,描述每个模块和应用怎样部署。当前54页,总共84页。3.J2EE的体系结构软件开发体系结构二层体系结构三层体系结构J2EE三层体系结构J2EE的N层体系结构当前55页,总共84页。软件开发体系结构“理想的建筑师应该既是文学家又是数字家,他还应通晓历史,热衷于哲学研究,精通音乐,懂得医药知识,具有法学造诣,深谙天文学及天文计算。”--Vitruvius(古罗马建筑师),约公元前25年所以开发良好的企业应用程序的第一步就是寻找优秀的系统构架师当前56页,总共84页。软件开发体系结构

(续)传统的客户服务器系统基于两层体系,如图:客户端(前台)表示逻辑和商业逻辑一起绑在客户应用程序中企业信息系统(后台)服务器数据库表示逻辑和商业逻辑一起绑在客户应用程序中客户A客户B当前57页,总共84页。二层体系结构没有任何中间层。业务逻辑层与表示层或数据层结合。业务逻辑客户端服务器数据层1层2当前58页,总共84页。二层体系结构(续)二层体系结构的特点数据库连接所需成本较高。数据库驱动程序的切换成本较高。数据库类型的切换成本较高。数据库模式的切换成本较高。业务逻辑的移植成本较高。部署成本较高。当前59页,总共84页。三层体系结构由表示层、业务逻辑层和数据层组成。各层的功能如下表示层主要由HTML等组成。业务逻辑层为业务逻辑组件提供运行时环境。数据层由数据库组成,并以存储过程的形式包含数据相关逻辑。当前60页,总共84页。三层体系结构(续)文件系统数据库服务器Web浏览器等中间层服务器当前61页,总共84页。三层体系结构(续)特点所有层均可独立运行。部署成本较低。数据库间的切换成本较低。业务逻辑的移植成本较低。错误被局限在单个层中。当前62页,总共84页。中间层处理客户端的请求,使客户端不用进行复杂的数据库处理。透明地为客户端执行许多工作,如查询数据库、执行业务规则和连接现有的应用程序。使开发人员可以创建适用于企业的大型分布式应用程序。当前63页,总共84页。J2EE三层体系结构J2EE体系结构基于三层体系结构表示层由处理用户交互的客户端组件及其容器所组成。

业务逻辑层由解决业务问题的组件组成。数据层由一个或多个数据库组成,并可包含存储过程。当前64页,总共84页。J2EE三层体系结构(续)客户端

数据库J2EE服务器Web容器运行Servlet/JSPEJB容器运行EJB表示层业务逻辑层数据层当前65页,总共84页。J2EE三层体系结构(续)业务逻辑层由两个容器组成Web容器JSP和Servlet组件由Web容器管理。EJB容器EJB由EJB容器管理。当前66页,总共84页。J2EE的N层体系结构

J2EE是分层体系,分为许多功能层。

理想的J2EE体系包括六个层:表示、应用、服务、域、连通性和持续化。这些层物理上横跨客户机和服务器,而他们逻辑上划分为Web容器、EJB容器和数据库。

当前67页,总共84页。J2EE的N层体系结构(续)

EntityBean浏览器客户服务器客户端/服务器端表示层服务器端商业逻辑企业信息系统域服务应用表示持续化客户应用容器WebcontainerEJB容器DB

SimpleBeanSessionBeanHtmlApplet

Web

服务器JSPServlet服务器端应用当前68页,总共84页。J2EE的N层体系结构(续)表示层被划分成两个部分客户端层:管理与用户的输入输出交互作用。该层提供HTML,表示应用数据。J2EE还支持诸如applets,独立应用或者CORBA客户等其他类型的客户。服务器端层:服务器端表达层包括JSP。JSP被用来产生Web的动态内容。这层把应用数据以网页的形式呈献给浏览器,然后数据按照在JSP中开发的预定的方式表示出来。这层也称为布局层。当前69页,总共84页。J2EE的N层体系结构(续)应用层:是客户端表达层和服务层之间相互作用的中介,根据用户请求来调用服务,也称为逻辑层。其主要的责任如下适应对域进行分布式的表示。从用户接口收集数据,解释数据并且发回数据。为表示层保持会话的状态。处理在服务激活期间发生的例外情况,在需要时提交给用户。应用层容器的责任是实例化必要的商业组件和表示组件,可以是Servlet或者JSP。在这一层上更倾向于Servlet。Servlets对HTTP会话的会话管理负责。当前70页,总共84页。J2EE的N层体系结构(续)服务层:为商业使用案例和应用要求的有用操作提供应用程序接口。服务层可以是域模型的封装层。客户通过请求服务与应用的域模型交互,但是他们接触不到实际的域对象。有下述好处

服务层方法能对牵涉到多个域对象的事务处理负责。服务允许掩藏系统规划。掩藏规划,能在对象分布中提供更大的灵活性,进而改进性能。许多应用能共享一套服务。

服务也提供一种十分高的杠杆作用测试点。

当前71页,总共84页。J2EE的N层体系结构(续)具有良好的层次、健壮的服务层的体系为可行的、可扩展的J2EE应用形成基础。服务层由如下组成部分形成

简单Bean会话Bean事务相关的组成部分当前72页,总共84页。J2EE的N层体系结构(续)域层:是应用的问题领域中抽象出来的模型。

商业规则和语法被嵌入在域层中的域对象中。它对加强商业规则和过程负责,新信息的语义检查也在域层进行。

形成域层的组成部分是应用的真正模型,主要是实体Bean,它包含必要的商业逻辑。当前73页,总共84页。J2EE的N层体系结构(续)连通性层:提供了域对象与后台系统之间的连接,是对后台服务器的抽象,因此,应用/域模型能够重用,连接到不论是大型主机,或者是Oracle上。该层由JDBC、JNDI和Java连接器体系组成。Java连接器体系提供了对遗留系统的连接。

当前74页,总共84页。J2EE的N层体系结构(续)持续化层:提供了一种机制,能永久性的存储对象的状态。它提供基本的CRUD(create,read,update,delete)服务,也提供对象-关系映射。

持续化层可以是企业现存的管理系统(比如每天的销售额管理),也可以是数据库,或者是已经存储了数据的大型主机。

当前75页,总共84页。J2EE体系结构的优点

根据J2EE规范,应用服务器必须提供如下服务安全框架事务管理名字和目录服务持续化集成和部署工具消息服务标准J2SE应用程序接口当前76页,总共84页。J2EE体系结构的优点(续)可选的服务包括

负载均衡复制数据库连接池线程池结果缓冲当前77页,总共84页。J2EE体系结构的优点(续)J2EE带来的好处是双向的,对于开发应用的公司和使用它的客户

简化了体系和开发。集成现有的企业信息系统。提供可扩展性。安全机制。当前78页,总共84页。使用J2EE的场景

我们参照一下可以考虑实现J2EE的情景多层应用情景Web容器装载Web组件,专门用来处理应用的表示逻辑;EJB容器用来装载应用组件。独立的客户端应用情形从J2EE应用模型的视野来看,我们给出二种类型的应用程序模型示例:E

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论