所有类


javax.naming.directory
类 SearchControls

java.lang.Object
  继承者 javax.naming.directory.SearchControls
所有已实现的接口:
Serializable

public class SearchControls
   
   
   
   
   
extends Object
implements Serializable

此类封装确定搜索范围和搜索返回结果的因子。

SearchControls 实例与并发多线程访问不同步。试图访问和修改单个 SearchControls 实例的多个线程应该锁定对象。

从以下版本开始:
1.3
另请参见:
序列化表格

字段摘要
static intOBJECT_SCOPE
          搜索命名的对象。
static intONELEVEL_SCOPE
          搜索一级命名对象。
static intSUBTREE_SCOPE
          搜索以命名对象为根的整个子树。
 
构造方法摘要
SearchControls()
          使用默认值构造搜索约束。
SearchControls(int scope, long countlim, int timelim, String[] attrs, boolean retobj, boolean deref)
          使用参数构造搜索约束。
 
方法摘要
 longgetCountLimit()
          检索将作为搜索结果返回的最大项数。
 booleangetDerefLinkFlag()
          确定在搜索期间是否将取消对链接的引用。
 String[]getReturningAttributes()
          检索将作为搜索的一部分返回的属性。
 booleangetReturningObjFlag()
          确定对象是否将作为结果的一部分返回。
 intgetSearchScope()
          检索这些 SearchControls 的搜索范围。
 intgetTimeLimit()
          检索这些 SearchControls 以毫秒为单位的时间限制。
 voidsetCountLimit(long limit)
          设置要作为搜索结果返回的最大项数。
 voidsetDerefLinkFlag(boolean on)
          启用/禁用在搜索期间取消对链接的引用。
 voidsetReturningAttributes(String[] attrs)
          指定将作为搜索的一部分返回的属性。
 voidsetReturningObjFlag(boolean on)
          启用/禁用作为结果的一部分返回所返回对象。
 voidsetSearchScope(int scope)
          将搜索范围设置为以下值之一:OBJECT_SCOPE、ONELEVEL_SCOPE 和 SUBTREE_SCOPE。
 voidsetTimeLimit(int ms)
          设置这些 SearchControls 以毫秒为单位的时间限制。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

OBJECT_SCOPE

public static final int OBJECT_SCOPE
搜索命名的对象。

从使用 OBJECT_SCOPE 的 search() 中得到的 NamingEnumeration 将包含一个或零个元素。如果命名的对象符合 search() 中指定的搜索过滤器,则枚举包含一个元素。元素中的名称将是一个空字符串,因为 NamingEnumeration 中的元素名称是相对于目标上下文的,在此情况下,目标上下文就是命名的对象。如果命名对象不符合 search() 中指定的搜索过滤器,则其包含零个元素。

此常量的值为 0

另请参见:
常量字段值

ONELEVEL_SCOPE

public static final int ONELEVEL_SCOPE
搜索一级命名对象。

从使用 ONELEVEL_SCOPE 的 search() 中得到的 NamingEnumeration 包含的元素是命名上下文中的对象,这些对象符合 search() 中指定的搜索过滤器。NamingEnumeration 中的元素名称是相对于命名上下文的原子名称。

此常量的值为 1

另请参见:
常量字段值

SUBTREE_SCOPE

public static final int SUBTREE_SCOPE
搜索以命名对象为根的整个子树。

如果命名对象不是 DirContext,则仅搜索该对象。如果命名对象不是 DirContext,则搜索以命名对象为根的子树,包括命名对象本身。

搜索将不超出命名系统的界限。

从使用 SUBTREE_SCOPE 的 search() 中得到的 NamingEnumeration 包含的元素是子树(包括命名上下文)中的对象,这些对象符合 search() 中指定的搜索过滤器的。NamingEnumeration 中的元素名称或者相对于命名上下文或者为 URL 字符串。如果命名上下文符合搜索过滤器,则它包含在以空字符串作为其名称的枚举中。

此常量的值为 2

另请参见:
常量字段值
构造方法详细信息

SearchControls

public SearchControls()
使用默认值构造搜索约束。

默认值为:

  • 搜索一级
  • 搜索结果不存在最大返回数限制
  • 搜索不存在时间限制
  • 返回所有符合搜索过滤器的与对象关联的属性
  • 不返回命名对象(仅返回名称和类)
  • 在搜索期间不取消对链接的引用


SearchControls

public SearchControls(int scope,
                      long countlim,
                      int timelim,
                      String[] attrs,
                      boolean retobj,
                      boolean deref)
使用参数构造搜索约束。

参数:
scope - 搜索范围。为以下值之一:OBJECT_SCOPE、ONELEVEL_SCOPE 和 SUBTREE_SCOPE。
timelim - 返回前要等待的毫秒数。如果为 0,则无限期地等待。
deref - 如果为 true,则在搜索期间取消对链接的引用。
countlim - 要返回的最大项数。如果为 0,则返回符合过滤器的所有项。
retobj - 如果为 true,则返回绑定到项名称的对象;如果为 false,则不返回对象。
attrs - 要与项一起返回的属性的标识符。如果为 null,则返回所有属性。如果为空,则不返回任何属性。
方法详细信息

getSearchScope

public int getSearchScope()
检索这些 SearchControls 的搜索范围。

OBJECT_SCOPE、ONELEVEL_SCOPE 或 SUBTREE_SCOPE 之一。

返回:
此 SearchControls 的搜索范围。
另请参见:
setSearchScope(int)

getTimeLimit

public int getTimeLimit()
检索这些 SearchControls 以毫秒为单位的时间限制。

如果值为 0,则其意味着无限期地等待。

返回:
这些 SearchControls 以毫秒为单位的时间限制。
另请参见:
setTimeLimit(int)

getDerefLinkFlag

public boolean getDerefLinkFlag()
确定在搜索期间是否将取消对链接的引用。

返回:
如果将取消对链接的引用,则返回 true;否则返回 false。
另请参见:
setDerefLinkFlag(boolean)

getReturningObjFlag

public boolean getReturningObjFlag()
确定对象是否将作为结果的一部分返回。

返回:
如果返回对象,则返回 true;否则返回 false。
另请参见:
setReturningObjFlag(boolean)