EJB中@Resource注释的mappedName和lookup属性有什么区别?

时间:2014-07-30 09:21:57

标签: java-ee ejb jndi java-ee-6 ejb-3.1

我在@Resource注释的两个属性之间感到困惑。

Java Documentations说:
mappedName:此资源应映射到的产品特定名称。由name元素或defaultaulted定义的此资源的名称是使用资源的应用程序组件的本地名称。 (它是JNDI java:comp / env命名空间中的名称。)许多应用程序服务器提供了将这些本地名称映射到应用程序服务器已知的资源名称的方法。此映射名称通常是全局JNDI名称,但可以是任何表单的名称。
查找:引用指向的资源的名称。它可以使用全局JNDI名称链接到任何兼容的资源。

  

我的问题是如何在 mappedName 查找之间进行选择,   根据什么标准?

1 个答案:

答案 0 :(得分:8)

正如它所说mappedName是特定于产品的,许多应用程序服务器都不支持。所以现在你应该使用lookup因为它应该是可移植的和跨平台的。您指定给定资源的全局JNDI。