当前位置: 首页 > 知识库问答 >
问题:

jndi绑定的模块和应用程序在Javaee 6/7有什么区别?

闽经纬
2023-03-14

我们在开发环境中从Jboss EAP 5迁移到EAP 6。

现在,我在JBOSS日志中看到了以下内容。我试图理解这种绑定是如何发生的。我已经阅读了关于JNDI名称空间绑定的JBOSS文档。我仍然不完全清楚它是如何工作的。这是我的日志。

java:global/customerCare/services/UserDaoImpl!com.example.services.UserDao
java:app/services/UserDaoImpl!com.example.services.UserDao
java:module/UserDaoImpl!com.services.UserDao
java:global/customerCare/services/UserDaoImpl
java:app/services/UserDaoImpl
java:module/UserDaoImpl

这是我的EJB

@Local
public interface UserDao {

    public static final String JNDI_NAME = "java:global/customCare/services/UserDaoImpl";

//interface methods here

}

@Stateless
public class UserDaoImpl implements UserDao {
// implement methods
}

我的疑问是:

>

应用程序和模块之间有什么区别?何时需要绑定到这些组件?这里的一些示例将非常有帮助

日志的最后三行显示绑定到UserDaoImpl。这是JBoss在没有我要求它绑定的情况下所做的事情吗?(我只为JNDI绑定设置了UserDao,但没有设置UserDaoImpl)。

我对JNDI命名空间绑定有点无知。阅读文档对我有所帮助,但程度不大。

谢啦

共有1个答案

翟修永
2023-03-14

我可以回答疑问2:所有的名字都是一样的,但上下文不同。

全局名称是用于全局绑定的完整JNDI上下文,即来自客户端或其他EAR文件

模块名称可用于在同一应用程序中绑定,即同一EAR中的不同EJB

本地名称用于本地绑定,即在jar或war中绑定。

使用较短的名称在本地绑定比每次指定完整的全局名称效率略高。

据我所知,JBoss EAP 6在部署期间总是列出每个企业bean的三/六个名称。它旨在帮助您作为开发人员识别bean的JNDI名称。

 类似资料:
  • 我已经阅读了一些关于将Web应用和API应用部署到Azure的教程。然而,我仍然有点不确定为什么你会使用一个而不是另一个。 我可以创建一个新的。NET解决方案,并将其部署为Web应用程序,那么为什么我会特别需要API应用程序呢?这些都是专门为ASP优化的。NET Web API,其中Web应用程序用于交付HTML?

  • 问题内容: 我在只有包的地方使用Java。我知道还有其他编程语言也包含模块。 有什么不同? 问题答案: 很难比较空白中的语义。(您还说什么其他语言?)“模块”可能类似于Java类,Java包或完全其他的东西,具体取决于该其他语言。通常,由于“模块”通常来自过程语言,因此我倾向于讲Java类,但是我认为那一线 很 模糊,您可以令人信服地争论一下程序包。

  • 绑定是否分别与原始值和对象匹配原始变量和引用变量? 编辑:请给我一些明确的参考资料,这样我就可以阅读更多关于这一点。

  • 我有Java的背景,我是Python的新手。在继续之前,我想确保我正确理解Python术语。 我对模块的理解是:一个可以由许多脚本导入的脚本,以便于阅读。就像在java中一样,您有一个类,该类可以由许多其他类导入。 我对库的理解是:库包含许多模块,这些模块因其用途而相互分离。 我的问题是:图书馆就像包裹一样,你有一个包裹,例如叫做食物的包裹,那么: 巧克力。py 糖果。py 比斯切茨。py公司 是

  • 我正在从Java9的新特性中学习Java9,讨论中的一个热门话题是模块化JDK。 JAR文件是模块吗? 模块与JAR文件有何不同?

  • 问题内容: 有太多相关的名称:早期和晚期绑定,静态和动态调度,运行时与编译时多态等,我不知道它们之间的区别。 我找到了清楚的解释,但这是正确的吗?我将解释 JustinC : 绑定: 正在确定变量的类型(对象?)。如果它是在编译时完成的,则它的早期绑定。如果在运行时完成,则绑定晚。 调度: 确定哪个方法与方法调用匹配。静态调度是在编译时计算的方法,而动态调度是在运行时执行的。 绑定是否分别将原始变