我是靠谱客的博主 美满皮卡丘,最近开发中收集的这篇文章主要介绍java openldap_Java连接openldap 增删改查操作,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

查询

DirContext   ctx   =   ...

SearchControls   constraints   =   new   SearchControls();

constraints.setSearchScope(SearchControls.SUBTREE_SCOPE);

//constraints.setSearchScope(SearchControls.ONELEVEL_SCOPE);

//NamingEnumeration   en   =   ctx.search( " ",   "uid=* ",   constraints);   //查询所有用户

NamingEnumeration en = ctx.search("", "uid=*", constraints);

while   (en   !=   null   &&   en.hasMoreElements())

{

Object   obj   =   en.nextElement();

if(obj   instanceof   SearchResult)

{

SearchResult   si   =   (SearchResult)   obj;

System.out.println( "name:   "   +   si.getName());

Attributes   attrs   =   si.getAttributes();

if   (attrs   ==   null)

{

System.out.println( "No   attributes ");

}

else

{

for   (NamingEnumeration   ae   =   attrs.getAll();  ae.hasMoreElements();)

{

Attribute   attr   =   (Attribute)   ae.next();

String   attrId   =   attr.getID();

for   (Enumeration   vals   =  attr.getAll();vals.hasMoreElements();)

{

System.out.print(attrId   +   ":   ");

Object   o   =   vals.nextElement();

if(o   instanceof   byte[])

System.out.println(new   String((byte[])o));

else

System.out.println(o);

}

}

}

}

else

{

System.out.println(obj);

}

System.out.println();

}

...

ctx.close();

添加

DirContext   ctx   =   ...;

String   newUserName   =   "user2 ";

BasicAttributes   attrs   =   new   BasicAttributes();

BasicAttribute   objclassSet   =   new   BasicAttribute( "objectclass ");

objclassSet.add( "person ");

objclassSet.add( "top ");

objclassSet.add( "organizationalPerson ");

objclassSet.add( "inetOrgPerson ");

attrs.put(objclassSet);

attrs.put( "sn ",   newUserName);

attrs.put( "uid ",   newUserName);

ctx.createSubcontext( "uid= "   +   newUserName,   attributes);

...

删除

String   account   =   "user2 ";

DirContext   ctx   =   ...;

ctx.destroySubcontext( "uid= "   +   account);

修改

String   account   =   "user2 ";

String   newDisplayName   =   "newDisplayName ";

ModificationItem   modificationItem[]   =   new   ModificationItem[1];

modificationItem[0]   =

new   ModificationItem(

DirContext.REPLACE_ATTRIBUTE,

new   BasicAttribute( "displayName ",   newDisplayName);

DirContext   ctx   =   ...;

ctx.modifyAttributes( "uid= "   +   account,   modificationItem);

最后

以上就是美满皮卡丘为你收集整理的java openldap_Java连接openldap 增删改查操作的全部内容,希望文章能够帮你解决java openldap_Java连接openldap 增删改查操作所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部