快速业务通道

在Apache目录服务器中存储Java对象,第2部分:(下) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
   //Step 8:            String entryRDN = sr.getName();            System.out.println("RDN of the Searched entry:  "+entryRDN);            //Step 9:            Attributes srAttrs = sr.getAttributes();            if (srAttrs != null) {               //Step 10:               for (Enumeration e = attrs.getAll() ; e.hasMoreElements()  ;)               {                 Attribute attr = (Attribute) e.nextElement();                 //Step 11:                 String attrID = attr.getID();                 System.out.println("Attribute Name: "+attrID);                 System.out.println("Attribute Value(s):");                 NamingEnumeration e1 = attr.getAll();                 while (e1.hasMore())                   System.out.println("\t\t"+e1.nextElement());               }//for()            }//if (srAttrs)          }        }//if (ne != null)      } catch (Exception e) {        System.out.println("Operation failed: " + e);      }    }    public static void main(String[] args) {     SearchForAlice searchAlice = new SearchForAlice();    }   }

在Apache目录服务器中存储Java对象,第2部分:(下)(2)

时间:2011-08-13 IBM Bilal Siddiqui

清单 6 中的搜索应用程序包含 11 个步骤。前两个步骤您应该可以从 清单 1 中回想起来,即装入 JNDI 属性并实例化一个 DirContext 对象。

可以回想一下,在讨论 清单 1 的步骤 1 中名为 java.naming.provider.url 的 JNDI 属性时,我提 到过供应者的 URL 包含两个组件,其中一个是要操作的目录上下文。您可能已经注意到 清单 4 中 java.naming.provider.url 的值是 ou=system。ou=system 字符串可在其中进行工作的目录上下文。所 以,所有搜索操作实际上都是在这个目录上下文中执行的。

因为要在这个示例中执行搜索操作,所以可以把 ou=system 目录上下文叫做搜索上下文。现在来看一 下搜索应用程序的剩余步骤:

步骤 3. 缩小搜索上下文:已知 Alice 是一个用户,所以不必在整个 ou=system 搜索上下文中搜索 Alice,只需在用户的组织单元(即 ou=users)中搜索即可。   步骤 4. 创建搜索属性:将关 于 Alice 的已知信息作为搜索属性。因为知道 Alice 的 uid 和对象类,所以可以创建一个只有两个属 性的集合:uid 和 objectClass。可以在 清单 6 的步骤 4 看到这些。(从 第 1 部分 的讨论您应该可 以想起 uid 是 RDN 的组件,而不是属性。但在指定搜索参数时,JNDI 要求指定 uid 值,就像它是属性 一样。)

步骤 5. 执行搜索:在这里调用 清单 6 的步骤 2 得到的 DirContext 对象的 search() 方法。 search() 方法采用了两个参数:第一个参数是在练习的第 3 步创建的搜索上下文,第二个参数是第 4 步的两个属性的集合。search() 方法返回 NamingEnumeration 对象,其中包含搜索结果。

步骤 1 到 5 设置搜索操作。其余的步骤处理 NamingEnumeration 对象并提取搜索结果。

步骤 6. 提取搜索结果:清单 6 的步骤 6 中的 NamingEnumeration 对象包含搜索结果集合。集合

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号