【发布时间】:2014-07-24 00:05:29
【问题描述】:
我正在从EJB in Action 一书中学习 EJB 3,这本书在第 5 章中讨论了环境命名上下文 (ENC)。它是这样说的:
如果您知道 JNDI 引用在 EJB 2 中是如何工作的,那么您应该熟悉 环境命名上下文 (ENC)。 ENC允许的便携性 应用程序,而不必依赖全局 JNDI 名称。全球 JNDI 资源名称在应用服务器实现之间有所不同, ENC 允许您使用以 java:comp/env/ 而不是硬编码实际的全局 JNDI 名称。 EJB 3 基本上假定代码中使用的所有 JNDI 名称都是本地的 引用并自动在名称前面加上 java:comp/env/ 前缀。
我不明白全局 JNDI 名称是什么意思?为什么它必须在应用服务器之间有所不同?
我将问题标记为 EJB2 和 EJB 3,因为引用引用了这两个版本。如果您有其他想法,请随时编辑。
【问题讨论】: