• 1. J2EE架构 ottafei@hotmail.com
  • 2. J2EE平台架构J2EE平台是一种多层的、分布式的(a multitiered distributed )应用模型。应用逻辑根据功能被划分成各种组件,而且组成J2EE应用程序的各种组件依据应用组件在多层J2EE环境中所属的层被安装在不同的机器上。
  • 3. J2EE平台架构(Continued)客户层(Client-tier)组件运行在客户机上。 Web层(Web-tier)组件运行在J2EE服务器(应用服务器)上。 业务层(Business-tier)组件运行在J2EE服务器(应用服务器)上。 企业信息系统(EIS)软件运行在EIS服务器上。J2EE应用程序是由组件组成的 J2EE组件是一种自身具有(self-container)相关功能和服务的软件单元。组件可以单独地开发和发布,与其他组件没有什么关系。组件本身就已经模块化了。组件同其相关的类和文件集成为J2EE应用,同时还同其他组件进行交互。 J2EE规范定义了如下组件: 应用客户(Application Client)和小应用(Applet)组件运行在客户端上。 Web组件JAVA Servlet/JSP运行在服务器端上。 业务组件EJB运行在服务器端上
  • 4. J2EE平台架构(Continued)J2EE的客户端可以是Web客户端和应用客户端 Web客户端由含有各种类型的标记语言(markup language)如HTML、XHTML、XML等动态的Web页面组成。它们主要由运行在Web层的Web组件生成,使用浏览器表示出来。Web页面也可以从Web层接收一种嵌在页面中的Applet
  • 5. J2EE平台架构(Continued)应用客户端(Application Client)是运行在客户机上的用户提供各种交互的JAVA应用程序,通常为图形用户接口(GUI)程序,使用SWING\AWT\SWT API创建,也可能是命令行接口(CLI)。Application Client可以直接访问业务层(Business tier)
  • 6. J2EE平台架构(Continued)J2EE的Web层和业务层:
  • 7. J2EE平台架构(Continued)多层(Layer)的J2EE应用:数据层存储(数据库系统,XML等) 查询和存储优化 性能调整业务层表示层用户接口持久层数据库连接 数据 I/O接口业务对象和规则 数据操作和传输信息Web 服务端 生成页面代理层分布逻辑客户交互 接口运行在客户机上的终端用户系统Oracle/SybaseO/R mapping/DAO BMP/CMP/JDBC/JDOSession BeanJSP/Servlet/Java BeanHTML/XML
  • 8. (本页无文本内容)
  • 9. (本页无文本内容)
  • 10. J2EE平台架构(Continued)多层(Layer)的J2EE应用:通用服务层安全 日志 数据源 异常 数据类型转换一般应用工作流 用户管理等特殊应用
  • 11. J2EE平台架构(Continued)J2EE体系结构:Web 容器ServletJSPJSTLJAX RPCSAAJJAXRJACCMgmtJMXJNDIJDBCJMSJTAJAFSession BeansJAX RPCSAAJJAXRJACCMgmtJMxJNDIJDBCJMSJTAJAFEJB容器Entity BeansMDBsJAX RPCSAAJJAXRJMSMgmtJMX应用客户端Applet客户端容器(X)HTML XMLRDMS邮件服务器JAVA应用程序CORBA服务器目录服务期消息服务器J2EE 应用服务器JDBCJavaMailRMIIIOPJNDIJMSHTTP
  • 12. (本页无文本内容)
  • 13. J2EE平台架构(Continued)J2EE开发中的角色: 开发一个分布式应用程序的工作并分成六个截然不同的角色。每个角色由 一个相关领域的专家来承担。通过这种划分工作的方式,使创建和管理一个 分布式系统的任务变得非常简单。 应用程序角色 这些承担应用程序角色的人为EJB组件编写代码,应用程序则使用这些代码。 这些角色需要在不同程度上理解商业运行的方式。以下是两种应用程序角色: 组件提供者 组件提供者(也叫做组件开发者)创建J2EE组件并在它们内部写入商业逻辑。 如EJB组件提供者同时定义了bean的远程/本地Home和远程/本地接口,并创建了 bean组件的部署描述符。组件提供者不需要知道他们的组件是如何装配和部署的。 应用程序装配者 应用程序装配者编写那些使用J2EE组件的应用程序。这些组件被装配成一个分布式应用程序。 装配者将装配指令加到bean组件部署描述符中。虽然应用程序装配者必须熟悉EJB组件内部包 含的方法以便调用它们,但是他们不必知道这些方法是如何实现的。
  • 14. J2EE平台架构(Continued)J2EE开发中的角色: 基础构架角色 没有一个用来支持的基础构架,EJB组件和使用这些组件的 应用程序就无法运行。虽然两种基础构架角色是截然不同的,但他们 几乎总是由同一厂商来承担。他们为EJB提供系统级的服务和运行环境。 这里有两种基础构架的角色: J2EE服务器提供者 EJB服务器提供者是分布式事务处理,分布式对象和其他低层次服务的专家。 他们提供运行容器的应用程序框架。如EJB服务提供者至少应该为bean组件 提供命名服务和事务处理服务。 容器提供者 容器提供者提供那些用来部署组件的部署工具和运行时支持。一个容器 为一个或多个组件提供管理服务。它们同J2EE服务器交流以访问组件需要的服务。 几乎在所有情况下,服务器提供者和容器提供者都是同一厂商。
  • 15. J2EE平台架构(Continued)J2EE开发中的角色: 部署和操作角色 EJB分布式应用程序开发的最后几个步骤就是部署应用程序和在程序运行时 监控企业级计算和网络部件。以下是部署和操作角色: 部署者 部署者了解分布式应用程序的运行环境。他们通过使用容器提供者提供的工具 修改组件的属性以使应用程序适应目标运行环境。例如, 部署者通过在部署描述符设置相应的属性来设置事务处理和安全策略。他 们也可能将应用程序同已存在的企业管理软件集成。 系统管理员 当一个应用程序被部署后,系统管理员就开始监控它的运行,并在应用程序 运行异常时采取适当措施。系统管理员应对包括服务器和容器在内的 企业级计算和网络部件负责。
  • 16. JBoss体系结构
  • 17. (本页无文本内容)
  • 18. JBoss体系结构
  • 19. (本页无文本内容)
  • 20. (本页无文本内容)
  • 21. (本页无文本内容)