【www.gdgbn.com--php基础】

提纲:
===================================
一、基础知识
1.1 J2EE应用的构成
1.2 封装和部署操作的任务
1.3 不能封装到EAR文件的组件
二、类装载模式
2.1 在EJB 2.0之前
2.2 在EJB 2.0之后
===================================
正文:
===================================
一、基础知识
1.1 J2EE应用的构成
J2EE应用由以下两种资源构成:
一个或者多个J2EE组件
一个J2EE应用部署描述器(Deployment Descriptor)
当多个异种的J2EE组件需要相互调用时,我们必须创建一个J2EE应用。在创建J2EE应用的过程中,有许多事情必须考虑,其中包括:
有哪些类型的组件可以封装到J2EE应用里?
创建J2EE应用的过程中,人们担负的各种职责。
当前J2EE封装技术的局限之处。
为满足J2EE组件交互的需要,不同的供应商所采取的类装载策略。
J2EE规范区分了两类资源:可以在容器之内运行的资源,可以封装到EAR文件内的资源。EAR是Enterprise Application ARchive的缩写,EAR文件用来把一个或者多个J2EE组件封装到单个模块里面,以便一起部署并装入到服务器上。
J2EE规范阐明了运行时容器和部署模块之间的区别。运行时容器是请求级的截取机制,为系统内的组件提供一种基础服务。部署模块是一种为那些最终将在运行时容器内执行的组件提供的封装结构。下图描述了J2EE容器的结构:
其中:
EJB容器
EJB容器用来容纳业务逻辑,并为业务逻辑截取请求。EJB容器支持EJB访问JMS、JAAS、JTA、JavaMail、JAXP、JDBC和连接器(Connector)。
Web容器
Web容器截取通过HTTP、FTP、SMTP或其他协议发送的请求。Web应用容器为Servlet和JSP页面提供的资源与EJB容器提供的资源相同。
应用客户端容器
客户端应用是独立的Java应用,它们在远程的独立JVM上运行(与Web容器和EJB容器所运行的JVM不同)。应用客户端容器为这些应用截取请求。
运行在应用客户端容器上的程序非常类似于带有main()方法的Java程序,不过,程序不再由JVM控制,而是由一个容器(也就是应用客户端容器)控制。
在应用客户端容器内运行的程序能够访问远程应用服务器上的JAXP、JDBC、JMS和JAAS资源。
Applet容器
Applet容器是一个特殊的容器,它为在浏览器内运行的Java程序截取请求。Applet容器不提供任何对其他资源(比如JDBC或JMS)的访问。在Applet容器内运行的Applet必须自己直接向应用服务器请求资源(而不是把请求发送给容器,然后由容器发送请求给应用服务器)。

本文来源:http://www.gdgbn.com/jiaocheng/5538/