本教程是针对JDK 8编写的。本页面描述的示例和实践不利用后续版本中引入的改进,并且可能使用不再可用的技术。
有关Java SE 9和后续版本中更新的语言功能的摘要,请参阅Java语言更改。
有关所有JDK版本的新功能、增强功能和已删除或已弃用选项的信息,请参阅JDK发行说明。
javax.naming包含了访问命名服务的类和接口。
javax.naming包定义了一个Context接口,它是查找、绑定/解绑、重命名对象以及创建和销毁子上下文的核心接口。
JNDI定义了Reference类来表示引用。引用包含构造对象副本的信息。JNDI将尝试将从目录中查找的引用转换为它们所表示的Java对象,以便JNDI客户端认为存储在目录中的是Java对象。
在JNDI中,所有的命名和目录操作都是相对于一个上下文执行的,没有绝对的根。因此,JNDI定义了一个InitialContext,它提供了命名和目录操作的起始点。一旦有了初始上下文,你可以使用它来查找其他上下文和对象。
JNDI定义了一组异常类,用于在执行命名和目录操作过程中可能抛出的异常。这个类层次结构的根是NamingException。程序可以通过捕获对应的异常子类来处理特定的异常,否则应该捕获NamingException。