我使用以下代码列出 LDAP 中的用户:
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY, CONTEXT);
env.put(Context.PROVIDER_URL, HOST);
env.put(Context.SECURITY_PRINCIPAL,USER);
env.put(Context.SECURITY_CREDENTIALS,PASSWORD);
DirContext ctx = new InitialDirContext(env);
SearchControls sc = new SearchControls();
sc.setSearchScope(SearchControls.SUBTREE_SCOPE);
NamingEnumeration items = ctx.search(BASE, filter, sc);
while (items != null && items.hasMore()) {
SearchResult sr = (SearchResult)items.next();
System.out.println("SR : " + sr) ;
}
现在我得到的输出是;
SR : cn=smith: null:null:{objectclass=objectClass: person, sn=sn: smith, cn=cn: smith}
SR : cn=king: null:null:{objectclass=objectClass: person, sn=sn: king, cn=cn: king}
我怎样才能从 SearchControls 获得如下输出:
sn = smith | cn = smith
sn = king | cn = king
如下所示对您的系统输出进行简单的更改还不够吗?
System.out.println("SR : "
+ sr.getAttributes().get("sn")
+ " | "
+ sr.getAttributes().get("cn")
) ;
或者,我在这里读错了什么?
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)