(ldap入门)连接&检索

本文提供了一个使用Java进行LDAP连接的示例代码。该示例展示了如何配置环境参数、创建InitialDirContext实例,并执行搜索操作来查找指定的条目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package net.tianyu.sample;

import java.util.Hashtable;

import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.SearchControls;
import javax.naming.directory.SearchResult;

public class LdapConnect {

	@SuppressWarnings("unchecked")
	public static void main(String[] args) {

		// InitialDirContextの作成
		Hashtable env = new Hashtable();
		env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
		env.put(Context.PROVIDER_URL, "ldap://localhost:10389");
		env.put(DirContext.SECURITY_PRINCIPAL, "uid=admin,ou=system");
		env.put(DirContext.SECURITY_CREDENTIALS, "secret");

		try {
			DirContext ctx = new InitialDirContext(env);
			SearchControls constraints = new SearchControls();
			constraints.setSearchScope(SearchControls.SUBTREE_SCOPE);
			NamingEnumeration results = ctx.search("ou=system", "uid=admin", constraints);
			if (results == null) {
				System.out.println(" No Search Result.");
				return;
			}
			while (results.hasMoreElements()) {
				SearchResult aResult = (SearchResult) results.nextElement();
			}
		} catch (NamingException ex) {
			System.err.println("Fail to Search\n");
			ex.printStackTrace();
		}
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值