不同厂商为满足J2EE组件交互而采用的类装入方式。
1、用J2EE打包组件
![]()
一个J2EE组件,例如servlet或EJB,是与组件描述中定义的接口保持一致的独立功能软件单位,并且这类软件很明显地依靠于其生存环境。组件也许是一个单一的类,但也经常是类、接口和资源的集合。J2EE平台提供五种类型的组件:EJB,servlets和JSP,applet,应用客户程序以及连接器(connector)。
J2EE平台中的模块和应用程序被作为部署单元而打包和部署,这种过程所得到的压缩文档与JAR文件类似,但具有一个指定的内部结构和文件扩展名。通常来说,存在四种不同类型的J2EE平台模块:
(l)EJB模块,其中包含ejb文件及相应类;EJB模块是一个可实施的单元,包括EJB、关联的库JAR文件以及资源。 EJB模块被预打包成JAR文件,在JAR文件的META-INF目录中有一个实施描述符 (ejb-jar.xml)。
(2)Web模块,其中包含Web层的组件及资源;Web模块是一种可以实施的单元,由Java Servlets、JSP网页、JSP标志库、库JAR文件、Html/XML文档及其他公共资源如图片,applet类文件等组成。一个Web模块打包成一个Web ARchive file,也称为一个WAR文件。WAR文件类似于JAR文件,只是WAR文件包含一个WEB-INF目录,在web.xml文件中包含实施说明。
(3)应用客户模块,其中包含应用客户类;应用程序客户模块JAR文件包含一个独立的Java应用程序,它将要在应用程序客户容器中运行。这个应用程序客户JAR文件包含一个专门化的实施描述符,其构成与EJB JAR文件类似。JAR文件包含运行独立的客户所需的类,当然还包括访问JDBC、JMS、JAXP、JAAS或者EJB客户所需的任何客户库。