中间件技术1概述_第1页
中间件技术1概述_第2页
中间件技术1概述_第3页
中间件技术1概述_第4页
中间件技术1概述_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1课程内容概述J2EE架构基础Servlet、JSP、EJB开发J2EE应用部署J2EE应用开发架构实例2中间件技术最早具有中间件技术思想及功能的软件是IBM在60年代开发的CICS(CustomerInformationControlSystem)。80年代初期,SunMicrosystems开发了一种最早的中间件,作为其开放网络体系结构的一部分,这种中间件是基于RPC协议的。但由于CICS不是分布式环境的产物,而SunMicrosystems开发的不是完整的中间件产品,因此人们一般把Tuxedo作为第一个严格意义上的中间件产品,Tuxedo是在1984年由AT&T的贝尔实验室开发完成的。到90年代,中间件技术得到了巨大的发展和广泛的应用,出现了大量具有广泛影响的中间件产品,如OMG的Corba、Microsoft的DCOM/COM+、IBM的MQS等。3中间件技术中间件是基础软件,处于操作系统(或网络协议)与分布式应用之间,从而屏蔽操作系统(或网络协议)的差异,实现分布式异构系统之间的互操作。中间件的定义:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。4中间件技术通过功能分类:消息中间件(MOM:Message-OrientedMiddleware)

基于消息传递模式两台机器之间传递消息时,可将消息打成包,发送到消息中间件服务器,由这个服务器完成消息传送。若连接不成功,则自动连接,成功传送为止。提供一些接口如:IBM公司的MQ产品。5中间件技术通过功能分类:数据库中间件(DatabaseMiddleware)不同数据库的编程接口不同,当数据库需要进行数据库迁移时,必须对程序代码进行修改。可用数据库中间件软件帮助屏蔽数据库操作的差异。想调用数据库功能时通过数据库中间件所提供的接口,告诉你需要访问的数据库类型,以及需要的操作,数据库中间件可以帮助完成操作。数据库中间件还可以完成不同类型数据库之间的数据转换,以及数据同步等工作。6中间件技术通过功能分类:远程过程调用中间件(RPC:RemoteProcessCall)用于特定的操作系统,尤其是UNIX环境下使用。用于一个应用必须由多台计算机完成的情况。UNIX环境下的一种标准化的调用过程7中间件技术通过功能分类:对象请求代理中间件(ORB:ObjectRequestBroker)CORBA一个对象需要调用另外一个对象的功能,两个对象可能在不同机器上。通过对象请求代理中间件来调用另外一个对象的服务。由代理查询对象在哪里,如何调用。编程复杂,使用不太多8中间件技术通过功能分类:事务处理中间件(TPMonitor:TransactionProcessMonitor)应用程序调用一个事务,由中间件帮助完成这个事务。中间件可以做到事务要么可以正确结束,要么可以恢复到事务处理之前的状态。9中间件技术通过功能分类:J2EE中间件将消息中间件,数据库中间件,事务中间件等功能融合在一起。10软件开发技术的发展基于主机的系统两层的Client/Server系统三层(n层)体系架构表示层业务逻辑层数据层基于Web的三层(n层)体系架构11C/S(客户端/服务器模式)优缺点服务器端运行负荷较轻数据的存储管理功能较为透明C/S体系维护成本高且投资大客户端数据库12B/S(浏览器/服务器模式)优缺点Web系统功能比较难实现技术开发复杂HTTP可靠性低,可能造成应用故障Web服务器负载大业务逻辑和数据访问控制程序分散,难于共享Browser浏览器Web服务器数据库13企业级应用的要求分布式可移植面向Web体系满足企业计算要求一致性事务性安全性好的特性可伸缩可扩展易维护遗留系统集成以上要求需要一个良好的基础架构来支持14企业级应用环境15JMS消息服务功能Servlet,JSP做web页面开发功能Connector用来跟遗留系统连接XSLT是XML比较好的数据共享的解决方案可以做数据绑定和数据转换的功能16AppServer用来安放所开发软件的服务器WebServer支撑Web的访问Components组件是一些写好的现成代码,被放到应用服务器上,提供了编程接口。DatabasesObjecttoDBtools对象和数据库的映射工具以上都是第三方厂商做好的,性能比较稳定的高可靠性的软件。17什么是J2EE?

Java2Platform,EnterpriseEdition(J2EE)Openandstandardbasedplatformfordeveloping,deployingandmanagingn-tier,Web-enabled,server-centric,andcomponent-basedenterpriseapplications运用Java技术开发企业应用的标准包括了多层应用开发模型开发平台-APIs和服务测试软件包参考实现将所有Sun的企业技术集合在一个体系结构下的平台特定版本下的EJB,Servlet,JSPJavaWebServerJNDI,JDBC,JTA,JMS,JavaMail,CORBA…18Java2Platform19J2EE可以提供什么分布式、可移植构件的框架简化服务器端中间层构件的设计为构件和应用服务器提供标准API20J2EE可以为开发者和用户带来更短的开发时间可重用组件JSP EJB自由的选择基于开放的标准简化的连接XML,JDBC,RMI-IIOP,WebService21J2EE技术架构任何平台Java虚拟机J2EEFramework安全组件组件组件组件JCAebXMLJTAJMS…22BrowserServlet

or

JSPContainersEJBServerBCHTTPEntity

BeanHOMEREMOTESession

BeanHOMEREMOTEDataADataJDBCRMI/IIOPJDBCAppServerJ2EE应用体系结构23J2EE是端到端的解决方案24N层J2EE体系架构25J2EE主要技术概览展示层–ServLet/JSP中间层–EJB中间层可用的企业服务事务服务JTA目录服务JNDI消息服务JMS异步组件Message-DrivenEJB数据层-JDBC远程调用–RMI/IIOP使用现有资源-JCA26J2EE1.4Contents27.Net与J2EE的比较WS-IWindowsCLR.NET安全适配器编排服务企业服务消息队列LinuxJVMJ2EESecurityJCAebXMLJTAJMS……28Web架构:J2EEvs.NET表示层业务逻辑层数据层J2EECLR.NETAssemblyADO.NET(可使用COM+服务;比如事务)Web表单Server控件Code-BehindASP.NETIISJavaBeansEJBsJSPServlets可运行于大多数主要应用及Web服务器支持大多数数据库(通过JDBC驱动程序)J2SE/EEJDBC(事务使用JTA).NETSQLServerOracleDB/2,etc.SQLServerOracleDB/2,etc.状态:ASP.NETSession,

.NET数据缓存状态:封装于EJB中,也可在WebSessions中29J2EE/.NET主要技术比较JDBCJTAJNDIJMSJavaMailRMI/IIOPJAFADO.NET.NETTransactionActiveDirectory.NETMessagingSmtpMailWebService/Remoting.NETJIT30技术的成熟性MicrosoftJ2EE199619971998199920002001MSXMLJAXPASPJSPMTS/COM+EJBODBCJDBCMar1992ADSIJNDIQCMDBLCEMMCWinDNAJ2EEMSMQJMSVS.Net.Net31J2EE的移植性与互操作性理论上J2EE应用可以采用多个厂商的产品只要符合J2EE的标准实际情况J2EE标准不完整,如WebServiceJ2EE的技术需改进,如EJB各厂商发展各自的技术不同产品很难协同和移植J2EE可选择同一厂商支持的不同操作系统32.Net的移植性与互操作性理论上.Net应用可移植到任何平台CLS提交给标准化组织只要支持CLR实际情况只有Windows/FreeBSD.Net支持WebService可以使用任何平台运行的WebService任何平台可使用.NetWeb

温馨提示

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

评论

0/150

提交评论