模块  java.naming

Class SearchControls

  • 实现的所有接口
    Serializable

    public class SearchControls
    extends Object
    implements Serializable
    此类封装了确定搜索范围的因素以及搜索结果返回的内容。

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

    从以下版本开始:
    1.3
    另请参见:
    Serialized Form
    • 字段详细信息

      • 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()
        检索这些SearchControl的搜索范围。

        OBJECT_SCOPE,ONELEVEL_SCOPE,SUBTREE_SCOPE之一。

        结果
        此SearchControls的搜索范围。
        另请参见:
        setSearchScope(int)
      • getTimeLimit

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

        如果值为0,则表示无限期等待。

        结果
        这些SearchControls的时间限制,以毫秒为单位。
        另请参见:
        setTimeLimit(int)
      • getDerefLinkFlag

        public boolean getDerefLinkFlag()
        确定在搜索期间是否取消引用链接。
        结果
        如果链接将被取消引用,则为true; 否则是假的。
        另请参见:
        setDerefLinkFlag(boolean)
      • getReturningObjFlag

        public boolean getReturningObjFlag()
        确定是否将对象作为结果的一部分返回。
        结果
        如果将返回对象,则为true; 否则是假的。
        另请参见:
        setReturningObjFlag(boolean)
      • getCountLimit

        public long getCountLimit()
        检索因搜索而返回的最大条目数。

        0表示将返回所有条目。

        结果
        将返回的最大条目数。
        另请参见:
        setCountLimit(long)
      • getReturningAttributes

        public String[] getReturningAttributes()
        检索将作为搜索的一部分返回的属性。

        值null表示将返回所有属性。 空数组表示不返回任何属性。

        结果
        一组属性id,用于标识将返回的属性。 可以为null。
        另请参见:
        setReturningAttributes(java.lang.String[])
      • setSearchScope

        public void setSearchScope​(int scope)
        将搜索范围设置为以下之一:OBJECT_SCOPE,ONELEVEL_SCOPE,SUBTREE_SCOPE。
        参数
        scope - 此SearchControls的搜索范围。
        另请参见:
        getSearchScope()
      • setTimeLimit

        public void setTimeLimit​(int ms)
        设置这些SearchControls的时间限制,以毫秒为单位。

        如果值为0,则表示无限期等待。

        参数
        ms - 这些SearchControls的时间限制,以毫秒为单位。
        另请参见:
        getTimeLimit()
      • setDerefLinkFlag

        public void setDerefLinkFlag​(boolean on)
        在搜索期间启用/禁用链接解除引用。
        参数
        on - 如果真正的链接将被取消引用; 如果错误,不遵循。
        另请参见:
        getDerefLinkFlag()
      • setReturningObjFlag

        public void setReturningObjFlag​(boolean on)
        启用/禁用作为结果的一部分返回的返回对象。

        如果禁用,则仅返回对象的名称和类。 如果启用,将返回该对象。

        参数
        on - 如果为true,将返回对象; 如果为false,则不返回对象。
        另请参见:
        getReturningObjFlag()
      • setCountLimit

        public void setCountLimit​(long limit)
        设置搜索结果返回的最大条目数。

        0表示无限制:将返回所有条目。

        参数
        limit - 将返回的最大条目数。
        另请参见:
        getCountLimit()
      • setReturningAttributes

        public void setReturningAttributes​(String[] attrs)
        指定将作为搜索的一部分返回的属性。

        null表示将返回所有属性。 空数组表示不返回任何属性。

        参数
        attrs - 标识将返回的属性的属性ID数组。 可以为null。
        另请参见:
        getReturningAttributes()