- 作者:zhaozj
- 发表时间:2020-12-23 10:58
- 来源:未知
1.多层模型
J2EE平台提供了一个多层应用程序模型,这意味着应用程序的不同部分可以运行在不同的设备上。J2EE结构定义了一个客房机层,一个中间层(由一个或多个子层组成),以及一个EIS层。
客户机层:支持各种各样的客户机类型,可以在公司的防火墙之内或之外。
中间层:在web层中通过web容器支持客户机服务,在EJB层中通过Enterprise JavaBeans容器向商业组件提供各种服务。
企业信息系统(EIS)层:利用标准的API支持对企业信息系统的访问。
2.基于容器的组件管理
J2EE基于组件的开发模型的中枢容器(Container)的概念,容器提供了组件服务的运行时(Runtime)环境,组件可以期望它们的服务在任何J2EE平台上都有效,例如,所有的J2EE Web容器都提供运行时支持,以便结果返回给客机,执行请求时的处理(例如:调用JSP或Servlet),并将结果返回给客户机。所有的EJB容器提供对EJB组件的事务和生命周期管理的自动支持,并支持对EJB的查找或其他的服务。容器还提供对企业信息系统的标准化访问,例如,通过JDBC API提供对关系数据库管理系统的访问。
另外,容器提供了一个在装配或部署期间设定应用程序行为的机制,通过使用部署描述符(一个文本文件,利用XML标记指定组件的行为),在部署时(而不是在组件代码中),组件可以补配置到特定的容器环境,部署过程中可以配置的内容包括安全检查、事务控制,以及其他的管理职责。
3.对客户机组件的支持
J2EE的客户机层提供了多种客户类型的支持,可以是在企业防火墙之内和之外。客户机可以通过Web浏览器提供,浏览器可能是使用无格式的HTML页,或者是使用JSP(JavaServer Page)技术生成的动态的HTML页,或者是Java Applet。单机(stand-alone)的Java应用程序也可以作为客户机。J2EE客户可假定主要使用Web标准(即HTTP,HTML和XML)访问中间层。
为了支持更复杂的用户交互操作,可能需要在客户机层直接提供一些功能,这些功能通常以Java bean组件的方式实现,利用Servlet与中间层的服务交互操作。客户机层的Java bean组件通常被服务作为一个Applet提供,自动动下载到用户的浏览器。为了减少用户浏览器中老版本的或非标准的Java虚拟机引起的问题,J2EE应用程序模型对自动动下载和安装的Java插件提供了专门的支持。
客户机层的Bean还可能被包含在一个使用Java语言编写的单机应用程序客户机中,在这种情况下,企业通常会利用不同的操作系统安装程序,用户可以利用它们的浏览器下载,之后,用户执行安装程序,访问服务。由于Java程序可以移植到所有平台上,服务仅仅需要维护一个版本客户机程序。尽客机程序本身是可以移植的,Java客户机上的安装程序通常与操作系统有关,有几种商业工具可以自动生成这些与操作系统有关的安装程序。