有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java对JNDI感到困惑

我一直在读一篇关于JNDI的文章,但是我很困惑

因此,简单地说:

  1. JNDI就像一个对象容器,每个条目都是一个字符串名称-对象对
  2. 这些对是否存储在JVM中?例如,在同一台本地计算机上,App#1使用名称"testDS"注册一个数据源对象,一段时间后,App#2可以使用键"testDS"获取该数据源对象?但是从哪里来?在JVM中

共 (3) 个答案

  1. # 1 楼答案

    你错过了一些关于JNDI的东西。JNDI是一种应用程序编程接口(API)。它是一组类,为用Java编程语言编写的应用程序提供命名和目录功能

    因此,由于这些类在JVM中运行,因此我们可以说,通过使用JVM,应用程序使用JNDI来执行其任务

  2. # 2 楼答案

    你需要后退一步。除了Java和JNDI之外,还有“目录和命名服务”。这些东西就像LDAP、DNS或您的计算机文件系统(想想路径和文件名),允许您通过名称和目录访问结构化的东西

    JNDI是一个JavaAPI,它允许您使用其中的一个,并且无论您使用哪一个接口,接口应该大体相同

    通过JNDI访问的对象是使用目录和命名服务存储的,而不是直接使用JVM

    因此,如果有两个JVM使用JNDI访问相同的目录和命名服务,并且配置相同,那么它们应该访问相同的对象。如果他们正在访问不同的服务,那么无论是同一个JVM,他们都将无法访问相同的对象

  3. # 3 楼答案

    当您试图访问d:/users/name/text下的文件时,请考虑这一点。您只需键入其名称,即可访问其内容。JNDI在同一个概念下工作,您可以使用JNDI这个名称来处理您想要的内容