JAVA操作LDAP有几种方法,这里主要介绍的是JNDI包,就是它:
1、先导入所需的包,如下:
import java.util.ArrayList;
import java.util.Hashtable;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.directory.Attribute;
import javax.naming.directory.BasicAttribute;
import javax.naming.directory.BasicAttributes;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.DirContext;
import javax.naming.directory.Attributes;
import javax.naming.directory.ModificationItem;
import javax.naming.directory.SearchResult;
import javax.naming.NamingException;
import com.sun.net.ssl.internal.ssl.Debug;
2、连接LDAP,得到连接对象,如下:
DirContext ctx = null;
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, ldap://192.168.0.1:389);
env.put(Context.SECURITY_AUTHENTICATION, "simple");
env.put(Context.SECURITY_PRINCIPAL, "");
env.put(Context.SECURITY_CREDENTIALS, "123456");
try
{
}
catch(NamingException e)
{
}
这里建议大家把以上的代码写成一个函数,返回DirContext 这个对象,方便使用。
转载自:http://blog.sina.com.cn/s/blog_4da69d9a0100ja75.html