J2EE平台多层体系架构.ppt_第1页
J2EE平台多层体系架构.ppt_第2页
J2EE平台多层体系架构.ppt_第3页
J2EE平台多层体系架构.ppt_第4页
J2EE平台多层体系架构.ppt_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

J2EE平台多层体系架构,Java2PlatFormEnterpriseEdition,信息部门主管关心的问题,信息孤岛问题。不同的部门有不同的应用系统,使用传统的开发工具,无法实现信息的共享互用。如何实现不同系统间信息的互用?如何保护系统的投资?业务在不断地发展,系统在不断地升级,单位在不断地投资在传统的开发方式下,除了部分模块、函数能够在升级产品中利用来,其他大部分要推倒重做,需要重新投资完成以前投资的内容,造成极大的浪费。如何保护以前的投资,使以前开发的应用产品能平滑地在新系统中使用?如何减少系统的投资?复杂的应用、数量庞大的系统用户,需要昂贵的系统硬件来支撑.如何改善系统购价,以期达到最少的投资?如何面对瀑涨的应用要求?应用在不断地添加、完善,处理不断地变得复杂,系统应用人员在不断地增加主机系统已经变得不堪重负。是更换更加昂贵的主机设备,还是添加一些比较廉价的主机系统,由系统动态均衡负载?在传统的方式下,只能通过更换更加昂贵的主机系统。如何紧跟系统平台日异月新的升级换代。,系统管理员关心的问题,系统健壮性问题应用主机系统Down机了,怎么办?系统安全如何保证系统不被非法使用?如何改进系统运行效率复杂的应用、数量庞大的用户,如何控制系统资源的耗费?传统方式下,系统资源的耗费随着用户数量的递增而递增系统软件的更新应用软件更新后,如何让数量庞大的前端用户也更新?,系统用户关心的问题,面对这么多的应用系统,怎么办?一种应用系统一套软件,电脑桌面上的应用系统越来越多了。不同的系统有不同的界面,不同的操作方式,需要不断的学习,命苦啊不同的系统要记住不同的登录口令,真是命苦不同的系统信息在各自的系统中展现,没法统一起来使用,还要手工计算,烦怎么又要下载更新?系统又不能用了传统工具往往需要在客户端配置参数或安装驱动程序,如果前端用户环境发生变化,可能导致系统无法正常使用。系统太慢了当用户数量增多,系统负载变大,慢,开发商关心的问题,如何解决成本问题?传统方式,要求开发人员的技术比较全面,从界面、前端开发工具、数据库工具成本比较高。如何保证质量传统方式,每个开发人员都可能涉及到软件系统的各个层次,要求每个开发人员都要关心、注意各个环节的技术细节,质量隐患点太多了。如何保证开发进度传统方式,各种业务模块都需要自己开发如何满足用户对其他系统中的信息处理需求?A)需要开发与该系统相近的处理代码;工作量太大了。B)对其他系统的业务、实现方式不了解;直接操作外部系统,风险太大了。C)每个外部系统的接口都不一样,都要分别编写,太难了。如何复用以前开发的软件部件或产品?A)面向过程代码级的复用。B)面向初级部件级的复用。如何满足用户的性能要求?系统响应能力与用户数的增加、安全要求、动态均衡、系统强壮性要求.很多需要自己开发。开始系统实施,要跑遍所有的业务点安装。,C/S开发模式历程,2层体系结构2.5层体系结构3层体系结构,系统偶合模型发展历程,面向过程、代码的系统紧偶合需要与系统联编,与系统一起打包接口不标准而且复杂,需要知道过程或代码接口产品复用能力低面向组件级的系统紧偶合需要与系统联编,并需要准确知道组件部署所在的位置接口不一定标准而且复杂,需要知道组件的应用接口产品复用能力较高面向部件的系统松偶合不需要了解部件部署的位置接口不一定标准,需要知道部件的应用接口产品复用能力高面向服务的系统无关联松偶合不需要了解服务部署的位置应用接口标准化;不需要知道服务的具体应用接口产品复用能力高,2层、2.5层体系结构,随着用户数增加,系统资源耗费成几何级数增加,而且很多资源耗费呈空闲浪费。部署不不方便A)系统实施问题B)界面要求更新问题C)业务逻辑更新问题D)系统负载问题E)系统健壮性问题产品可复用能力带来的投资保护问题A)面向过程代码级的复用B)更换开发商,可复用能力基本=0信息孤岛问题开发商产品难题,C/S3层体系架构,系统部署问题系统实施、界面逻辑更改、客户端环境变化信息孤岛问题直接操作不同系统的数据,没有标准的接口方式,获取外系统的信息可重用性:面向简单部件或过程,优点A)系统资源管理(连接池)B)业务逻辑可重用程度比较高C)有些产品可以在业务逻辑层完成不同系统的信息共享D)跨平台信息共享,传统B/S开发模式历程,3层体系结构界面逻辑/业务逻辑统一在系统主机上;系统升级、实施、部署方便可以跨平台访问数据库,实现数据共享一致的用户界面交互方式。有些产品实现面向部件的复用能力常用工具:Asp,普通JavaBean,信息孤岛问题直接操作不同系统的数据没有标准的接口方式可重用性:简单部件或过程,没有标准没有资源管理,无法满足复杂及大用户量的应用要求。,J2EE多层体系架构,J2EE技术基础J2EE概述J2EE带来的优势,J2EE基础:Java的技术特点,目标代码与系统硬件平台无关模板式的类继承方法面向命名的系统联编其他优势面向对象的编程方式准C+语法结构;解决地址管理问题众多厂家支持;统一版本标准IBMWebSphere;WebLogic;OracleOC4JSun公司统一标准。,目标代码与系统平台无关,Java虚拟机可以在不同的系统软件、不同的硬件平台运行。(2PlatForm)系统平台的变化,不会影响已经投资开发的应用软件。如:硬件系统、操作系统、数据库系统。,模板式的类继承方法,模板式的类继承方法,可以制定统一的业务处理接口标准;实现不同业务系统间无逢的信息共享。可以方便的实现不同业务的流水化处理作业。通过接口的标准化,真正面向部件的产品复用能力;保护系统原来的投资。,面向命名的系统联编,传统工具连编方式:面向地址A)变量:编译联编完成后,通过地址访问变量中存储的内容B)过程或方法:联编完成后,也是转换成地址的方式,供其他过程调用。C)联编系统中任何一个模块发生变化,都需要重新联编,以重新确定地址。动态连接库A)通过命名的方式供其他过程调用。B)通过字符串的方式供过程调用,不参与系统编译,无法事先发现错误。C)动态连接库调用接口繁杂;仍然需要调用者重新确定系统地址后,再执行。D)动态连接库是以库的方式提供命名连编。,Java命名联编方式,真正的面向命名联编方式A)Java程序编译成目标文件后,与系统地址无关;通过名称找到过程所引用的变量或方法。B)系统开发初期,可以按系统定义空的框架结构供其他开发者使用;待开发完毕后,再发布到系统上,而不需要和其他模块一起联编。C)只与java路径名称有关,与系统物理目录无关;在J2EE架构中,甚至与对象运行所在的主机无关。该技术所带来的优势A)各种的功能模块无须联编,只需要定义模块框架,即可在共同发布后使用。便于各种业务模块分工合作、集群开发,代码或版权保密。B)可以方便的实现系统模块的部件化,从而达到产品的可重用能力。C)便于部件的部署;部件的部署可以在本机,也可以在J2EE架构的异地主机。D)实现面向功能单点级别的升级或修正。任何一个功能模块修改后,无需整个系统联编,既可使用。,J2EE系统结构,Java2PlatformEnterpriseEdition是一些列技术规范以及成熟的组件或部件的总和在Java语言的基础上;通过一系列框架基本类,规定一些商业部件的编程规范,以及一些成熟的商用部件,Web包容器,Java虚拟机环境,单进程,多线程运行环境Web服务的提供者,管理者标准规范HttpServerlet规范Jsp规范提供组件JAFRMI/IIOPJavaMailJMSJDBCJTAJNDI传统的JavaWeb应用程序所在地Tomcat等,Web包容器Web请求,Java虚拟运行环境一个Http请求启动一个线程Web服务的提供者A)打包Http请求,组成标准的JavaHttpRequest对象B)根据Http请求地址,路由寻找对应的Serverlet类或JspWeb部署描述器,Web包容器-Jsp规范,提供了纯Html与java相结合的界面逻辑编程方式例子,+V_ServiceResult.getErrorMessage();return;System.out.println(ResultHasnoError);if(V_HttpRequest.getParameter(Add)!=null)System.out.println(Redirect:);response.sendRedirect(book_edit.jsp?bookno=+V_HttpRequest.getParameter(BookNo);return;%,Serverlet规范,publicclassMeetManaextendsHttpServletpublicvoidinit()throwsServletExceptionpublicvoiddestroy()publicvoidservice(HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException,functioncommitit()form1.action=book_add.jsp;returntrue;编号书名出版商文件,Web包容器提供的组件,JDBC:JavaDatabaseConnection数据库连接池管理,使得系统主机资源不会空闲浪费。跨数据库平台:Oracle,Sybase,Db2,SqlServer可以同时连接多个数据库提供同样的组件接口模板规范RMI/IIOP:RemoteMathodInvocation远程方法调用InternetInter-OrbProtocol互联网对象需求中介协议实现分布式计算;是J2EE实现基础技术JNDI:JavaNameDirectoryInterfaceJTA:JavaTransationassistant数据库事务管理JavaMail:邮件服务JMS:JavaMessageService消息服务,Ejb包容器,Enterprisejavabean与Web包容器属于不同的进程是Ejb部件的管理器实现面向部件应用藕合方式Java部件技术规范JavaEjb基础类模板提供与Web包容器一样的风格。,实现面向部件应用藕合方式,实现面向部件藕合的应用方式,客户/服务的部署方式客户端通过命名的方式,获得的Ejb远程对象,就象操作本地对象一样操作。客户端不需要知道Ejb对象部署在哪里,是本地主机还是异地主机。客户端需要的只是部件的接口模板类;部件的业务逻辑全部部署在服务端。通过JNDI/LDAP命名目录服务获取Ejb部件的部署的位置通过RMI或IIOP实现异地主机远程部署,Ejb容器所完成的工作,Java虚拟机环境;单进程,多线程部件服务的路由容器中部件对象生命周期的管理根据客户端请求,按照Ejb模板基类声明的方法,实例化不同的Ejb业务类根据客户端请求,调用业务类中的方法。管理永久性的Ejb对象。Ejb对象的访问权限控制。Ejb对象的类型永久性Ejb暂时性EjbEjb对象管理方法交换释放,Ejb模板的种类,会话Bean(SessionBean)业务处理逻辑类的接口规范实体Bean(SessionBean)业务数据结构及其数据的接口规范提供了实体Bean的生成工具,会话Bean,SessionBean有状态SessionBean;无状态SessionBean一种接口规范主要用于业务逻辑的处理模版publicclassCountBeanimplementsSessionBeanpublicvoidejbCreate()throwsCreateException/创建publicvoidejbRemove()/删除publicvoidejbPassivate()/从内存交换到硬盘publicvoidejbActivate()/从硬盘交换到内存publicvoidsetSessionContext(SessionContextctx)/Ejb包容器初始化publicintbusinessDeal(BusinessObjectI_Object)-业务处理逻辑,实体Bean,描述的数据集合提供一些方法,操作数据永久性基类模板publicvoidejbPostCreate(UwkDtouwkdto)throwsCreateExceptionpublicvoidejbRemove()throwsRemoveExceptionpublicvoidejbLoad()publicvoidejbStore()publicvoidejbActivate()publicvoidejbPassivate()publicvoidunsetEntityContext()publicvoidsetEntityContext(EntityContextentityContext),J2EE层次结构,J2EE带来的优势,J2EE带来的优势,面向Web的应用开发界面逻辑与业务逻辑都存放在系统主机,无须安装在各个客户端信息孤岛问题的解决EJB实现了远程异地对象透明的访问;信息共享时,本地不需要开发任何业务逻辑代码,其业务逻辑代码部署在对应外部系统的应用服务器上。本地系统开发商不需要了解异地系统业务部件的具体业务逻辑,也不需要编写任何业务代码。使得各个业务系统的信息都可以得到共享。可复用程度的高,保护了原来的系统投资Ejb提供了面向部件的复用实现均衡负载,重新调整主机的负载当应用服务器负载过重时,可以通过添购比较廉价的主机设备,将负载过重的服务器上运行的Ejb业务逻辑部件,分散部署到不同的主机上。减小开发周期,减少开发成本,降低开发风险利用原先投资开发的成熟的Ejb业务部件在市场上外购成熟稳定的Ejb部件;如流程管理部件,报表制定部件、数据分析部件等,J2EE带来的优势,标准透明的资源管理标准的,与数据库平台无关,接口标准。透明的,编程人员无须关心连接池的关闭与否,降低了系统开发风险连接池的管理,减少了空闲无益的数据库在线连接数,极大的降

温馨提示

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

评论

0/150

提交评论