- 我能夠在執行下面的代碼時得到結果,但是我想將字符串數組中的成員存儲起來,但我不這樣做。我是新來的Java可以幫助我一些人。
下面的代碼如何在字符串數組中存儲組成員
System.out.println(" Person Common Name = " + attributes.get("member")+"\t");
是能夠給我組成員,但我想它存儲在字符串數組。
在此先感謝。
package com.ankit.ldap;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.directory.*;
import java.util.Hashtable;
/**
* User: gmc
* Date: 16/02/11
*/
public class SimpleQuery {
public static void main(String[] args) {
String userName = "xxxxxxxxxxxxxxxxx";
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "xxxxxxxxxxxxxxx");
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, new String(userName));
env.put(Context.SECURITY_CREDENTIALS, "xxxxxx");
DirContext ctx = null;
NamingEnumeration results = null;
try {
ctx = new InitialDirContext(env);
SearchControls controls = new SearchControls();
controls.setSearchScope(SearchControls.SUBTREE_SCOPE);
results = ctx.search("", "(cn=CompetencyGroup)", controls);
while (results.hasMore()) {
SearchResult searchResult = (SearchResult) results.next();
Attributes attributes = searchResult.getAttributes();
Attribute attr = attributes.get("cn");
String cn = (String) attr.get();
System.out.println(" Person Common Name = " + attributes.get("member")+"\t");
System.out.println(" Person Display Name = " + attributes.get("displayName"));
System.out.println(" Person MemberOf = " + attributes.get("memberOf"));
}
} catch (Throwable e) {
e.printStackTrace();
} finally {
if (results != null) {
try {
results.close();
} catch (Exception e) {
}
}
if (ctx != null) {
try {
ctx.close();
} catch (Exception e) {
}
}
}
}
}
是否要將其存儲在特定的String數組中?你是否聲明瞭這個String數組?你有沒有嘗試過某種東西,並得到一個錯誤信息,或者你是否試圖產生一些你不知道該怎麼做的效果(並且沒有告訴我們)?您沒有提供足夠的信息讓我們知道如何幫助您。 – arcy
我不明白,因爲你可以訪問'屬性',那麼你在將它存儲在'字符串數組'中時面臨的問題在哪裏? – Smit