什么是JNDI,我是否需要它来进行网站建设

时间:2011-02-12 08:27:18

标签: java jndi

我正在为网站学习Java和Spring。我有几次看到JNDI这个词。 它是什么,我需要学习它还是在构建Web应用程序的过程中需要它?

2 个答案:

答案 0 :(得分:3)

JNDI是一种方便的方式,让应用程序说“我需要资源X”,而容器(例如Tomcat)则说“资源X可用,看看这里或那里实际配置了X”。

您可以使用上述机制来避免,例如,在代码中硬编码数据库属性。您可以通过配置文件来实现相同的目的,但在重新部署之间不会保留某些上下文(例如: .war 文件)配置文件,因此它们不是一个选项。

关于JNDI绑定内容的好例子是数据库数据源,对SMTP电子邮件服务器的引用,安全领域等。

将JNDI视为HashMap,其中键是String,值是具体对象或同一结构的另一个HashMap。因此,找到像jndi://a/b这样的值将决定转到顶级地图,找到关键a并期望它的值是另一个地图。然后在该子图中查找键b,并将相关值返回给用户。

答案 1 :(得分:2)

Java命名和目录接口(JNDI)是一种用于目录服务的Java API,它允许Java软件客户端通过名称发现和查找数据和对象。与所有与主机系统连接的Java API一样,JNDI独立于底层实现。也许你可以使用它,但我从来没试过!