文档

Java™ 教程
隐藏目录
事件和服务提供程序包
路径:Java命名和目录接口
课程:JNDI概述

事件和服务提供者包

事件包

javax.naming.event包含用于支持命名和目录服务中的事件通知的类和接口。事件通知在事件通知教程中有详细描述。

事件
NamingEvent表示由命名/目录服务生成的事件。事件包含一个类型,用于标识事件的类型。例如,事件类型分为影响命名空间的事件(如"对象已添加")和不影响命名空间的事件(如"对象已更改")。
监听器
NamingListener是一个监听NamingEvent的对象。每种事件类型都有相应类型的NamingListener。例如,NamespaceChangeListener表示对命名空间更改事件感兴趣的监听器,ObjectChangeListener表示对对象更改事件感兴趣的监听器。

要接收事件通知,监听器必须注册到EventContextEventDirContext中。一旦注册,监听器将在命名/目录服务中发生相应更改时接收事件通知。有关事件通知的详细信息,请参阅JNDI教程

服务提供程序包

javax.naming.spi包提供了不同命名/目录服务提供程序的开发者开发和连接其实现的手段,以便这些相应服务可以从使用JNDI的应用程序中访问。

插件架构
javax.naming.spi 包允许动态地插入不同的实现。这些实现包括 初始上下文 和可以从初始上下文访问的上下文的实现。
Java对象支持
javax.naming.spi 包支持实现查找和相关方法的开发人员返回对于Java程序员来说是自然和直观的Java对象。例如,如果你从目录中查找打印机名称,那么你可能期望得到一个打印机对象来操作。这种支持以对象工厂的形式提供。

该包还提供了支持反向操作的功能。也就是说,实现Context.bind()和相关方法的开发人员可以接受Java对象并将对象存储在底层命名/目录服务可以接受的格式中。这种支持以状态工厂的形式提供。

多命名系统(联合)
JNDI操作允许应用程序提供跨多个命名系统的名称。在完成操作的过程中,一个服务提供者可能需要与另一个服务提供者进行交互,例如将操作传递给下一个命名系统继续进行。该包提供了不同提供者合作完成JNDI操作的支持。

有关服务提供者机制的详细信息,请参阅JNDI教程


上一页: 目录和LDAP包
下一页: 软件设置