WEB开发网
开发学院软件开发Java 在 Apache 目录服务器中存储 Java 对象,第 2 部分... 阅读

在 Apache 目录服务器中存储 Java 对象,第 2 部分:在 ApacheDS 中存储、搜索和检索 Java 对象(上)

 2010-04-19 00:00:00 来源:WEB开发网   
核心提示: 接下来,实例化叫做 InitialDirContext 的类,在 Apache 目录服务器中存储 Java 对象,第 2 部分:在 ApacheDS 中存储、搜索和检索 Java 对象(上)(6),这个类是 JNDI 的一部分,该类用于公开叫做 DirContext 的接口,那么只需根据非 LD

接下来,实例化叫做 InitialDirContext 的类。这个类是 JNDI 的一部分,该类用于公开叫做 DirContext 的接口。InitialDirContext 的构造函数接受上面讨论的 Properties 对象。

InitialDirContext 对象能够执行您想在 ApacheDS 上执行的所有目录操作,包括存储新对象、搜索已经存储的对象、向现有对象添加属性,等等。

DirContext 接口

DirContext 接口扩展了 Context 接口。Context 接口表示命名上下文,DirContext 接口则提供与添加、删除和管理命名上下文有关的属性的功能。

简言之,Context 接口提供命名功能,DirContext 接口扩展命名功能,添加对属性的支持。命名和属性功能共同构成了目录服务。

您可能会说 InitialDirContext 对象是由工厂对象实例化的 DirContext 对象的包装器。在这个示例中,InitialDirContext 的构造函数使用了 清单 2 的第一个属性指定的上下文工厂对象(即 com.sun.jndi.ldap.LdapCtxFactory)。工厂对象实例化了一个公开 DirContext 对象的对象,而 InitialDirContext 对象则使用这个 DirContext 对象执行客户机应用程序要求的目录操作。

使用 ApacheDS 的优势

ApacheDS 目录服务的主要优势在于:让客户机应用程序独立于任何特定实现。客户机应用程序在配置文件中指定工厂方法,InitialDirContext 对象用工厂方法实例化了 DirContext 对象,该对象包含处理远程目录服务通信所需的所有逻辑。

例如,清单 1 使用了来自 Sun Microsystem 的 com.sun.jndi.ldap.LdapCtxFactory 工厂对象。这个工厂对象创建的 DirContext 对象能够制定 ApacheDS 可以理解的 LDAP 请求。

如果以后想使用一些非 LDAP 服务运行 StoreAlicePreferences 应用程序(来自 清单 1),那么只需根据非 LDAP 服务的业务逻辑,用新的工厂对象交换 清单 2 中的工厂对象的名称即可。然后 StoreAlicePreferences 就可以开始使用非 LDAP 服务了。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Apache 目录 服务器

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接