如何使用jndi验证目录(LDAP或AD)中是否存在对象?

时间:2011-12-08 21:21:54

标签: java ldap jndi ldif

目前我们正在做类似的事情:

Attributes attributes = directoryConnection.find(filter, false);
if (attributes == null) {
    // then the object does not exist
}

我认为这样效率不高,我们不需要检索整个属性(在组对象的情况下它们可能是一些thousends ...我只是想知道对象是否存在)

有没有更好的方法来检查对象是否存在?我可以使用对象的cn或它的整个dn

1 个答案:

答案 0 :(得分:1)

要确定是否存在“对象”,您必须搜索该对象。搜索请求至少包含:

  • 基础对象
  • 范围
  • 过滤
  • 请求的属性

还有一些其他可选参数,例如大小限制和时间限制等。搜索对象,请求属性1.1,搜索响应将指示返回的条目数。如果返回的条目数为零,则该对象不存在。有关详细信息,请参阅"LDAP: ldapsearch""LDAP: Programming Practices"