组件框架。组件框架是一种中间件系统,它支持遵守一定标准的有不同组件构成的应用程序。应用组件被塞入这种确立它们运行环境和规定它们交互的框架中。这通常是通过容器,组件持有者来实现的。这种容器也提供通常需要的功能以实现命名,安全性,事务,和持久性!组件框架为组件的执行提供了一个集成的环境,因此显著的减少了在设计,实现,部署和维护应用程序时工作。现在工业上的组件框架标准以对象管理组的CORBA组件模型, SUN 公司的JAVA 2 Platform J企业版[J2EE]和微软公司的.NET标准,其中在企业里应用最为广泛的组件框架是2EEE。J2EE. J2EE是开发多层企业应用JAVA程序的综合性的标准。J2EE规范定义如下:
(1) 组件编程模型。
(2) 组件和主服务器的链接。
(3) 服务器提供给组件的服务。
(4) 各种各样的人物角色。
(5) 兼容性检验装置和编译测试程序。
在众多的服务列表中,消息通信,事务处理,命名机制和其它应用组件用到的服务是应用服务器必须提供的。用J2EE进行应用开发必须遵守经典的3层结构—表现层,业务层和企业信息系统层。属于各层的J2EE组件在开发时遵守具体的J2EE标准。
1、表现层或者网络层
这一层实际上又被分为客户端和服务器端。客户端包括浏览器,applets,Java应用程序等和负责和服务器端的表现层或者业务层进行交互。服务器端包括servlet、jsp和静态网页内容。这些组件负责把业务数据传递给终端用户。数据本身通常从业务层获得有时也从企业信息系统层直接获得。表现层的服务器端通常通过Http协议来进行访问。
2、业务层或者EJB层
这一层包含EJB,即企业应用的事务逻辑模型。这些组件提供了持久化机制和事务支持。EJB中的组件通过RMI被调用。在Java虚拟机调用或者异步的消息传递,取决与EJB组件的类型。EJB规范定义了很多种组件。它们在调用风格(同步和异步,本地和远程)与状态(完全状态,不可持久状态,可持久)方面不同。同步调用的EJB组件通过特定的工厂代理对象来表现自己。这种工厂代理对象通常被EJB部署者绑定在JNDI中。EJB对象允许或者本地EJB对象是特定EJB实例的代理。
3、企业信息系统或者数据层
这一层指的就是企业信息系统,比如关系数据库,ERP系统,消息系统等。业务层和持久层在资源适配器的帮助下与该层进行通信。资源适配器在Java连结结构中被定义。J2EE编程模型一直被认为是分布式的编程模型,在该模型中应用组件在J2EE服务器上运行并且彼此可以相互交互。经过初始化说明和第一个服务实现后,该技术,更显著的说EJB技术,已经明显地从纯粹的分布式计算模型转向了本地交互。转变的背后有合理的性能有关的原因,然而分布式的特征现在还存在。J2EE规范已经经过了好几次修订,现在最稳定的版本是1.3,1.4版本正处于重审阶段。我们应该把注意力放在1.3版本上,而实际上是在学习后者。适用与商业的J2EE实现可以大量的从BEA系统,IBM,Oracle等赞助商得到。包括JBoss和JOnAS在内的开源实现据称兼容性也不错。最近名单上有多出了新的Apache project Geronimo。