我现在正在阅读J2EE 1.4规范,有很多我不明白的术语.这是来自容器的规格:
容器为J2EE应用程序组件提供运行时支持.容器为应用程序组件提供底层J2EE API的联合视图.J2EE应用程序组件从不与其他J2EE应用程序组件直接交互.他们使用容器的协议和方法相互交互并与平台服务进行交互.在应用程序组件和J2EE服务之间插入容器允许容器透明地注入由组件的部署描述符定义的服务,例如声明式事务管理,安全性检查,资源池和状态管理.
由于我来自Web开发世界,我无法理解,这究竟是做什么的,以及容器的用途是什么.提供运行时支持是什么意思?它如何使J2EE在术语或可扩展性方面成为更好的系统?
Tom*_*icz 65
J2EE/Java EE应用程序不是自包含的.为了执行它们,需要将它们部署在容器中.换句话说,容器在JVM之上提供执行环境.
此外,应用程序依赖于几个API,如JPA,EJB,servlet,JMS,JNDI等.符合EE的容器的作用是提供所有或部分API的标准实现.这意味着理论上,只要依赖于标准API,您就可以在任何容器上运行应用程序.
从技术角度来看,容器只是另一个带有main()方法的Java SE应用程序.另一方面,EE应用程序是服务/ bean/servlets/etc的集合.容器找到这些组件并运行它们,提供API实现,监视,可伸缩性,可靠性等.
JEE容器提供了源代码的包装.
典型的容器是经典的EJB数据bean,以及消息驱动的bean.在某种程度上,servlet和portlet也可以被视为容器.
容器提供了大量服务: -