全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
开放搜索

搜索操作

更新时间:2017-06-07 13:26:11


构造函数

接口描述

CloudsearchSearch类是非线程安全的。建议每次请求完毕后需要调用clear()接口清空上次请求的设置

或者重新实例化一个CloudsearchSearch对象

参数描述

参数名称 类型 描述
client CloudsearchClient 此对象由CloudsearchClient类实例化。

接口定义

  1. CloudsearchSearch(CloudsearchClient client)

执行搜索请求(1)

接口描述

参见:API 配置config子句

参数描述

参数名称 类型 描述
opts Map<String, Object> 此参数如果被赋值,则会把此参数的内容分别赋给相应 的变量。此参数的值 可能有以下内容:
opts: 此参数如果被赋值,则会把此参数的内容分别赋给相应 的变量。此参数的值 可能有以下内容:
参数名称 参数描述
query 指定的搜索查询串,query=>"索引名:’鲜花’"。
indexes 指定的搜索应用,可以为一个应用,也可以多个应用查询。
fetch_field 设定只返回某些字段的值。
format 指定返回的数据格式,有json,xml和protobuf三种格式可选。
formula_name 指定的精排表达式名称,此名称需在网站中设定。
first_formula_name 指定的粗排表达式名称,此名称需在网站中指定。
summary 指定summary字段一些标红、省略、截断等规则。
start 指定搜索结果集的偏移量。取值范围:[0,5000], 默认值:0
hits 指定返回结果集的数量。 取值范围:[0,500],默认值:20
sort 指定排序规则。 默认值:“-”(降序)
filter 指定通过某些条件过滤结果集。
aggregate 指定统计类的信息。
distinct 指定distinct排序。
kvpair 指定的kvpair内容。
qp 指定的查询分析规则名称。
disable_qp 指定需要关闭的功能模块。

返回结果

异常描述

  • IOException

  • ClientProtocolException

接口定义

  1. String search(Map<String, Object> opts)throws ClientProtocolException, IOException, UnknownHostException

执行搜索请求(2)

返回结果

异常描述

  • IOException

  • ClientProtocolException

接口定义

  1. String search() throws ClientProtocolException, IOException

执行遍历搜索结果请求(1)

参数描述

参数名称 类型 描述
opts Map<String, Object> 此参数如果被赋值,则会把此参数的内容分别赋给相应 的变量。此参数的值 可能有以下内容:
opts: 此参数如果被赋值,则会把此参数的内容分别赋给相应 的变量。此参数的值 可能有以下内容:
参数名称 参数描述
query 指定的搜索查询串,query=>"索引名:’鲜花’"。
indexes 指定的搜索应用,可以为一个应用,也可以多个应用查询。
fetch_fields 设定只返回某些字段的值。
formula_name 指定的精排表达式名称,此名称需在网站中设定。
first_formula_name 指定的粗排表达式名称,此名称需在网站中指定。
summary 指定summary字段一些标红、省略、截断等规则。
hits 指定返回结果集的数量。
filter 指定通过某些条件过滤结果集。
kvpair 指定的kvpair内容。
qp 指定的查询分析规则名称。
disable 指定需要关闭的功能模块。
disable_qp 指定需要关闭的功能模块。

返回结果

  • 搜索结果

异常描述

  • IOException

  • UnknownHostException

  • ClientProtocolException

接口定义

  1. String scroll(Map<String, Object> opts)throws ClientProtocolException, UnknownHostException, IOException

执行遍历搜索结果请求(2)

返回结果

  • 搜索结果

异常描述

  • IOException

  • UnknownHostException

  • ClientProtocolException

接口定义

  1. String scroll() throws ClientProtocolException,UnknownHostException, IOException

添加一个应用列表来进行搜索

参数描述

参数名称 类型 描述
indexes List<String> 应用名称或应用名称列表。

接口定义

  1. void addIndex(List<String> indexes)

添加一个应用来进行搜索

参数描述

参数名称 类型 描述
indexName String 要搜索的应用名称。

接口定义

  1. void addIndex(String indexName)

在当前搜索中去掉一个应用的搜索结果

参数描述

参数名称 类型 描述
indexName String 要移除的应用名称

接口定义

  1. void removeIndex(String indexName)

获取当前请求中所有的应用名列表

返回结果

  • List<String> 返回当前搜索的所有应用列表。

接口定义

  1. List<String> getSearchIndexes()

设置精排表达式名称(formula)

接口描述

此表达式名称和结构需要在网站中已经设定,详情请浏览官网中的应用指定的表达式名称。

参数描述

参数名称 类型 描述
formulaName String 表达式名称。

接口定义

  1. void setFormulaName(String formulaName)

获取当前设置的表达式名称(formula)

返回结果

  • String 返回当前设定的表达式名称。

接口定义

  1. String getFormulaName()

设置粗排表达式名称(first_formula)

接口描述

此表达式名称和结构需要在网站中已经设定,详情请浏览官网中的应用指定的表达式名称。

参数描述

参数名称 类型 描述
formulaName String 表达式名称。

接口定义

  1. void setFirstFormulaName(String formulaName)

获取当前设置的粗排表达式名称(first_formula)

返回结果

  • String 返回当前设定的表达式名称。

接口定义

  1. String getFirstFormulaName()

添加一条动态摘要(summary)信息(1)

接口描述

增加了此内容后,fieldName字段可能会被截断、飘红等。

参数描述

参数名称 类型 描述
fieldName String 指定的生效的字段。此字段必需为可分词的text类型的字段。
len Integer 指定结果集返回的词字段的字节长度,一个汉字为2个字节。
element String 指定命中的query的标红标签,可以为em等。
ellipsis String 指定用什么符号来标注未展示完的数据,例如“…”。
snippet Integer 指定query命中几段summary内容。

返回结果

  • boolean 返回是否添加成功。

接口定义

  1. boolean addSummary(String fieldName, Integer len, String element,String ellipsis, Integer snippet)

添加一条动态摘要(summary)信息(2)

接口描述

增加了此内容后,fieldName字段可能会被截断、飘红等。

参数描述

参数名称 类型 描述
fieldName String 指定的生效的字段。此字段必需为可分词的text类型的字段。

返回结果

  • boolean 返回是否添加成功。

接口定义

  1. boolean addSummary(String fieldName)

添加一条动态摘要(summary)信息(3)

接口描述

增加了此内容后,fieldName字段可能会被截断、飘红等。

参数描述

参数名称 类型 描述
fieldName String 指定的生效的字段。此字段必需为可分词的text类型的字段。
len Integer 指定结果集返回的词字段的字节长度,一个汉字为2个字节。
ellipsis String 指定用什么符号来标注未展示完的数据,例如“…”。
snippet Integer 指定query命中几段summary内容。
elementPrefix String 指定标签前缀。
elementPostfix String 指定标签后缀。

返回结果

  • boolean 返回是否添加成功。

接口定义

  1. boolean addSummary(String fieldName, Integer len, String ellipsis,Integer snippet, String elementPrefix, String elementPostfix)

获取当前所有设定的摘要信息(summary)

返回结果

  • Map 返回summary信息

接口定义

  1. Map<String, Map<String, Object>> getSummary()

获取指定字段的摘要信息(summary)

参数描述

参数名称 类型 描述
fieldName String 指定的字段名称。

返回结果

  • Map<String,Object> 返回指定字段的summary信息。

接口定义

  1. Map<String, Object> getSummary(String fieldName)

把摘要信息生成字符串并返回(summary)

返回结果

  • String 返回字符串的summary信息。

接口定义

  1. String getSummaryString()

设置返回的数据格式名称(format)

参数描述

参数名称 类型 描述
format String 数据格式名称,有xml, json和protobuf 三种类型。默认值为:“xml”

接口定义

  1. void setFormat(String format)

获取当前的数据格式名称(format)

返回结果

  • String 返回当前的数据格式名称。

接口定义

  1. String getFormat()

设置返回结果的偏移量(start)

参数描述

参数名称 类型 描述
start int 偏移量。取值范围为 [0,5000], 默认值为:0

接口定义

  1. void setStartHit(int start)

获取返回结果的偏移量(start)

返回结果

  • int 返回当前设定的偏移量。

接口定义

  1. int getStartHit()

设置当前返回结果集的文档个数(hit)

参数描述

参数名称 类型 描述
hits int 指定的doc个数。默认值为:20,取值范围:[0,500]

接口定义

  1. void setHits(int hits)

获取当前设定的结果集的文档条数(hit)

返回结果

  • int 返回当前指定的doc个数。

接口定义

  1. int getHits()

增加一个排序字段及排序方式(sort)

接口描述

详细描述请见API 排序sort子句

参数描述

参数名称 类型 描述
field String 需要排序的字段名称。
sortChar String 排序方式,有升序“+”和降序“-”两种方式。默认值为“-”

接口定义

  1. void addSort(String field, String sortChar)

增加一个排序字段(sort)

接口描述

详细描述请见API 排序sort子句

参数描述

参数名称 类型 描述
field String 指定排序的字段名称。

接口定义

  1. void addSort(String field)

删除指定字段的排序(sort)

参数描述

参数名称 类型 描述
field String 指定的字段名称。

接口定义

  1. void removeSort(String field)

获取排序信息(sort)

返回结果

  • 返回当前所有的排序字段及升降序方式。

接口定义

  1. Map<String, String> getSort()

获取字符串类型的排序信息(sort)

接口描述

把排序信息生成字符串并返回。

返回结果

  • String 返回字符串类型的排序规则。

接口定义

  1. String getSortString()

增加一个自定义参数

参数描述

参数名称 类型 描述
paramKey String 参数名称。
paramValue String 参数值。

接口定义

  1. void addCustomParam(String paramKey, String paramValue)

获取自定义参数

返回结果

  • 返回自定义参数

接口定义

  1. Map<String, String> getCustomParam()

增加过滤规则(filter)(1)

接口描述

详细请见 API 过滤filter子句

参数描述

参数名称 类型 描述
filter String 过滤规则,例如fieldName >= 1。
operator String 操作符,可以为 AND OR。默认为“AND”

接口定义

  1. void addFilter(String filter, String operator)

增加过滤规则(filter)(2)

接口描述

详细请见 API 过滤filter子句

参数描述

参数名称 类型 描述
filter String 过滤规则。

接口定义

  1. void addFilter(String filter)

获取过滤规则(filter)

返回结果

  • String 返回字符串类型的过滤规则。

接口定义

  1. String getFilter()

添加统计信息(aggregate)相关参数(1)

接口描述

一个关键词通常能命中数以万计的文档,用户不太可能浏览所有文档来获取信息。而用户感兴趣的

可 能是一些统计类的信息,比如,查询“手机”这个关键词,想知道每个卖家所有商品中的最高价格。

则可以按照卖家的user_id分组,统计每个小组中最大的price值,例如:

groupKey:user_id,aggFun:max(price)

详细说明请参见:APi aggregate子句说明

参数描述

参数名称 类型 描述
groupKey String 指定需要统计的字段名称。
aggFun String 指定统计的方法。当前支持:count、max、min、sum等。
range String 指定统计范围。
maxGroup String 最大组个数。
aggFilter String 指定过滤某些统计。
aggSamplerThresHold String 指定抽样的伐值。
aggSamplerStep String 指定抽样的步长。

返回结果

  • boolean 返回添加成功或失败。

接口定义

  1. boolean addAggregate(String groupKey, String aggFun, String range,String maxGroup, String aggFilter, String aggSamplerThresHold,String aggSamplerStep)

添加统计信息(aggregate)相关参数(2)

参数描述

参数名称 类型 描述
groupKey String 指定需要统计的字段名称。
aggFun String 指定统计的方法。当前支持:count、max、min、sum等。

返回结果

  • boolean 返回添加成功或失败。

接口定义

  1. boolean addAggregate(String groupKey, String aggFun)

获取用户设定的统计相关信息(aggregate)

返回结果

  • 返回用户设定的统计信息。

接口定义

  1. List<Map<String, Object>> getAggregate()

返回字符串类型的统计信息(aggregate)

返回结果

  • 返回字符串类型的统计信息。

接口定义

  1. String getAggregateString()

添加聚合打散条件(distinct)(1)

接口描述

例如:检索关键词“手机”共获得10个结果,分别为:doc1,doc2,doc3,doc4,doc5,doc6,

doc7,doc8,doc9,doc10。其中前三个属于用户A,doc4-doc6属于用户B,剩余四个属于

用户C。如果前端每页仅展示5个商品,则用户C将没有展示的机会。但是如果按照user_id进行抽

取,每轮抽取1个,抽取2次,并保留抽取剩余的结果,则可以获得以下文档排列顺序:doc1、

doc4、doc7、doc2、doc5、doc8、doc3、doc6、doc9、doc10。可以看出,通过distinct

排序,各个用户的 商品都得到了展示机会,结果排序更趋于合理。

详细说明请见:API distinct子句

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。
distTimes int 为抽取的次数,默认值为1。
reserved String 为是否保留抽取之后剩余的结果,true为保留,false则丢弃,丢弃时totalHits的个数会减去被distinct而丢弃的个数,但这个结果不一定准确,默认为true。
distFilter String 为过滤条件,被过滤的doc不参与distinct,只在后面的 排序中,这些被过滤的doc将和被distinct出来的第一组doc一起参与排序。默认是全部参与distinct。
updateTotalHit String 当reserved为false时,设置update_total_hit为true,则最终total_hit会减去被distinct丢弃的的数目(不一定准确),为false则不减; 默认为false。
grade double 指定档位划分阈值。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount, int distTimes,String reserved, String distFilter, String updateTotalHit,double grade)

添加聚合打散条件(distinct)(2)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key)

添加聚合打散条件(distinct)(3)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount)

添加聚合打散条件(distinct)(4)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。
distTimes int 为抽取的次数,默认值为1。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount, int distTimes)

添加聚合打散条件(distinct)(5)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。
distTimes int 为抽取的次数,默认值为1。
reserved String 为是否保留抽取之后剩余的结果,true为保留,false则丢弃,丢 弃时totalHits的个数会减去被distinct而丢弃的个数,但这个结果不一定准确,默认为true。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount, int distTimes,String reserved)

添加聚合打散条件(distinct)(6)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。
distTimes int 为抽取的次数,默认值为1。
reserved String 为是否保留抽取之后剩余的结果,true为保留,false则丢弃,丢弃时totalHits的个数会减去被distinct而丢弃的个数,但这个结果不一定准确,默认为true。
distFilter String 为过滤条件,被过滤的doc不参与distinct,只在后面的 排序中,这些被过滤的doc将和被distinct出来的第一组doc一起参与排序。默认是全部参与distinct。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount, int distTimes,String reserved, String distFilter)

添加聚合打散条件(distinct)(7)

参数描述

参数名称 类型 描述
key String 为用户用于做distinct抽取的字段,该字段要求为可过滤字段。
distCount int 为一次抽取的document数量,默认值为1。
distTimes int 为抽取的次数,默认值为1。
reserved String 为是否保留抽取之后剩余的结果,true为保留,false则丢弃,丢弃时totalHits的个数会减去被distinct而丢弃的个数,但这个结果不一定准确,默认为true。
distFilter String 为过滤条件,被过滤的doc不参与distinct,只在后面的 排序中,这些被过滤的doc将和被distinct出来的第一组doc一起参与排序。默认是全部参与distinct。
updateTotalHit String 当reserved为false时,设置update_total_hit为true,则最终total_hit会减去被distinct丢弃的的数目(不一定准确),为false则不减; 默认为false。

返回结果

  • 返回是否添加成功。

接口定义

  1. boolean addDistinct(String key, int distCount, int distTimes,String reserved, String distFilter, String updateTotalHit)

删除某个字段的所有distinct信息

参数描述

参数名称 类型 描述
distinctKey String 要删除的dist key字段名称。

接口定义

  1. void removeDistinct(String distinctKey)

获取所有的distinct信息

返回结果

  • 返回所有的distinct信息。

接口定义

  1. Map<String, Map<String, Object>> getDistinct()

获取string类型的所有的distinct信息

返回结果

  • 返回字符串类型的distinct信息。

接口定义

  1. String getDistinctString()

设定指定索引字段范围的搜索关键词(query)

接口描述

此query是查询必需的一部分,可以指定不同的索引名,并同时可指定多个查询及之间的关系

(AND, OR, ANDNOT, RANK)。

例如查询subject索引字段的query:“手机”,可以设置为 query=subject:’手机’。

上边例子如果查询price 在1000-2000之间的手机,其查询语句为: query=subject:’手机’

AND price:[1000,2000]

NOTE: text类型索引在建立时做了分词,而string类型的索引则没有分词。

详细说明请见:API query子句

参数描述

参数名称 类型 描述
query String 设定搜索的查询语法。

接口定义

  1. void setQueryString(String query)

获取当前指定的查询词内容(query)

返回结果

  • 返回当前设定的查询query子句内容。

接口定义

  1. String getQuery()

设定当前的kvpair

接口描述

详细请见API 自定义kvpair子句

参数描述

参数名称 类型 描述
pair String kvpair内容

接口定义

  1. void setPair(String pair)

获取当前的kvpair

返回结果

  • String 返回当前设定的kvpair。

接口定义

  1. String getPair()

设定rerank_size

参数描述

参数名称 类型 描述
rerank_size int 精排算分文档个数,默认值200

接口定义

  1. void setRerankSize(int rerank_size)

获取当前rerank_size

接口描述

rerankSize表示参与精排算分的文档个数,一般不用修改,使用默认值就能满足,不用设置,会自动使用默认值200

返回结果

  • int 当前设定的rerank_size

接口定义

  1. int getRerankSize()

设置搜索返回的索引字段列表(fetch_fields)

参数描述

参数名称 类型 描述
fields List<String> 结果集返回的字段。

接口定义

  1. void addFetchFields(List<String> fields)

添加某个字段到搜索结果字段列表中(fetch_fields)

参数描述

参数名称 类型 描述
field String 指定的字段名称。

接口定义

  1. void addFetchField(String field)

获取搜索结果包含的字段列表(fetch_fields)

返回结果

  • 返回指定返回字段的列表。

接口定义

  1. List<String> getFetchFields()

添加一条查询分析规则(qp)

参数描述

参数名称 类型 描述
qpName String 查询分析规则名称

接口定义

  1. void addQpName(String qpName)

添加一条查询分析规则(qp)

参数描述

参数名称 类型 描述
qpNames List<String> 查询分析规则名称

接口定义

  1. void addQpNames(List<String> qpNames)

获取当前设置的查询分析规则(qp)

返回结果

  • 返回当前设置的所有查询分析规则名称

接口定义

  1. List<String> getQpNames()

关闭某些功能模块(disable)

接口描述

有如下场景需要考虑:

1、如果要关闭整个qp的功能,则指定functionName="qp";

2、如果待关闭的功能模块有更详细的配置可以通过value指定,如果没有可以为"";

如果需要关闭查询分析功能,可以使用下面的disableQp方法,可以更方便的指定需要禁用的功能子项

参数描述

参数名称 类型 描述
functionName String 需要禁用的函数名称
value String 待禁用函数的详细说明

接口定义

  1. void addDisableFunction(String functionName, String value)

获取当前设置的所有禁用函数(disable)

返回结果

  • 返回当前设置的所有需要禁用的函数

接口定义

  1. String getDisableFunctions()

关闭查询分析模块(qp)

接口描述

qp有如下模块:

1、spell_check: 检查用户查询串中的拼写错误,并给出纠错建议。

2、term_weighting: 分析查询中每个词的重要程度,并将其量化成权重,权重较低的词可能不会参与召回。

3、stop_word: 根据系统内置的停用词典过滤查询中无意义的词

4、synonym: 根据系统提供的通用同义词库和语义模型,对查询串进行同义词扩展,以便扩大召回。

example:

标示关闭整个qp

"qp:spell_check" 标示关闭qp的拼音纠错功能。

"qp:stop_word:index_name1|index_name2" 标示关闭qp中index_name1和index_name2上的停用词功能。

"qp:stop_word:index_name1|index_name2,synonym:index_name3" 标示关闭qp中index_name1和index_name2上的停用词功能,关闭index_name3上的同义词功能

参数描述

参数名称 类型 描述
opts Map<String, ArrayList<String>> 关闭qp的细节配置参数

接口定义

  1. void disableQp(Map<String, ArrayList<String>> opts)

关闭整个查询分析模块(qp)

接口定义

  1. void disableQp()

设置scroll请求的有效期

参数描述

参数名称 类型 描述
expire String 指定的scroll请求有效期 默认 1m 表示一分钟,支持的时间单位包括:w=Week, d=Day, h=Hour, m=minute, s=second

接口定义

  1. void setScrollExpire(String expire)

设置scroll请求的有效期

参数描述

参数名称 类型 描述
expire int 指定的scroll请求有效期 单位毫秒

接口定义

  1. void setScrollExpire(int expire)

获取设置的scroll请求有效期

返回结果

  • String 设置的scroll请求有效期

接口定义

  1. String getScrollExpire()

设置搜索请求类型(search_type)

参数描述

参数名称 类型 描述
searchType String 设置的搜索请求类型

接口定义

  1. void setSearchType(String searchType)

获取设置的搜索请求类型(search_type)

返回结果

  • String 设置的搜索请求类型

接口定义

  1. String getSearchType()

设置scroll请求的起始id

参数描述

参数名称 类型 描述
scrollId String scroll请求的起始id

接口定义

  1. void setScrollId(String scrollId)

获取设置的scroll请求起始id

返回结果

  • 设置的scroll请求起始id

接口定义

  1. String getScrollId()

清空用户设置的所有搜索条件

接口定义

  1. void clear()

添加一条自定义配置

参数描述

参数名称 类型 描述
key String 自定义配置项key
value Object 自定义配置项value

接口定义

  1. void addCustomConfig(String key, Object value)

移除自定义配置

参数描述

参数名称 类型 描述
key String 指定配置项的key

接口定义

  1. void removeCustomConfig(String key)

获取上次搜索请求的信息

返回结果

  • String 上次搜索请求的信息

接口定义

  1. String getDebugInfo()

搜索示例

  1. import com.opensearch.javasdk.*;
  2. String accesskey= "您的阿里云的Access Key ID";
  3. String secret = "阿里云 Access Key ID 对应的 Access Key Secret";
  4. Map<String, Object> opts = new HashMap<String, Object>();
  5. // 这里的host需要根据访问应用基本详情中的API入口来确定
  6. CloudsearchClient client = new CloudsearchClient(accesskey, secret ,host, opts
  7. KeyTypeEnum.ALIYUN);
  8. CloudsearchSearch search = new CloudsearchSearch(client);
  9. // 添加指定搜索的应用:
  10. search.addIndex("my_demo");
  11. // 指定搜索的关键词,如果没有输入索引名称,则使用“default”
  12. search.setQueryString("'词典'");
  13. //和下边等同
  14. search.setQueryString("default:'词典'");
  15. // 或者指定某索引字段进行查找。
  16. // 索引字段名称是您在您的数据结构中的“索引到”字段。
  17. search.setQueryString("index_name:'词典'");
  18. // 指定搜索返回的格式。
  19. search.setFormat("json");
  20. // 设定过滤条件。字段必须设定为可过滤
  21. search.addFilter("price>10");
  22. // 设定排序方式。字段必须设定为可过滤
  23. search.addSort("price", "+");
  24. // 返回搜索结果。
  25. System.out.println(search.search());
本文导读目录