封装jndi操作ldap服务器的工具类

时间:2022-01-30 04:30:43

LDAP操作封装类

目标:使用者只需要会使用List,Map 数据结构,将对LDAP的操作进行封装

类:主要有三个类 
1 Env类 包含LDAP的连接信息 
2 LdapConnectionFactory类 ldap连接工厂,提供初始化及获取ldap连接的方法 
3 LdapOperUtils ldap的处理工具类,提供了各种操作ldap的方法。

连接LDAP的连接属性类

 

复制代码代码如下:


package com.common.ldapconnection;

 

import org.apache.log4j.Logger;

/** 
 * <p>功能描述:连接LDAP的连接属性</p> 
 * @author liaowufeng 
 * @version 1.0 
 */ 
public class Env {

    // 调用log4j的日志,用于输出 
    private Logger log = Logger.getLogger(Env.class.getName());

    // 无论用什么LDAP服务器的固定写法,指定了JNDI服务提供者中工厂类 
    public String factory ; 
    // 服务连接地址 
    public String url ; 
    // 登陆LDAP的用户名和密码 
    public String adminUID ; 
    // 登陆LDAP用户密码 
    public String adminPWD ; 
    // 安全访问需要的证书库 
    public String sslTrustStore; 
    // 安全通道访问 
    public String securityProtocol ; 
    // 连接TimeOut 
    public String timeOut;

    /** 
     * 构造函数 
     */ 
    public Env() { 
    }

    /** 
     * 构造函数 
     * @param factory LDAP工厂类 
     * @param url     LDAP URL 
     * @param adminUID LDAP 用户 
     * @param adminPWD LDAP 密码 
     */ 
    public Env(String factory, String url, String adminUID, String adminPWD) { 
        this.factory = factory; 
        this.url = url; 
        this.adminUID = adminUID; 
        this.adminPWD = adminPWD; 
    }

    /** 
     * 构造函数 
     * @param factory LDAP 工厂类名 
     * @param url     LDAP URL 
     * @param adminUID LDAP 用户 
     * @param adminPWD LDAP 密码 
     * @param sslTrustStore  安全访问需要的证书 
     * @param securityProtocol 安全通道访问 
     */ 
    public Env(String factory, String url, String adminUID, String adminPWD, 
               String sslTrustStore, 
               String securityProtocol) { 
        this.factory = factory; 
        this.url = url; 
        this.adminUID = adminUID; 
        this.adminPWD = adminPWD; 
        this.sslTrustStore = sslTrustStore; 
        this.securityProtocol = securityProtocol; 
    }

    /** 
     * 构造函数 
     * @param factory LDAP 工厂类名 
     * @param url     LDAP URL 
     * @param adminUID LDAP 用户 
     * @param adminPWD LDAP 密码 
     * @param sslTrustStore  安全访问需要的证书 
     * @param securityProtocol 安全通道访问 
     */ 
    public Env(String factory, String url, String adminUID, String adminPWD, 
               String timeOut, 
               String sslTrustStore, 
               String securityProtocol) { 
        this.factory = factory; 
        this.url = url; 
        this.adminUID = adminUID; 
        this.adminPWD = adminPWD; 
        this.timeOut = timeOut; 
        this.sslTrustStore = sslTrustStore; 
        this.securityProtocol = securityProtocol; 
    }