0

我正在重写我们公司的搜索功能以使用 Solr 而不是 Compass。我们的旧代码使用 CompassQueryBuilder.CompassQueryStringBuilder 从关键字列表中构建查询。关键字中可能包含空格:例如:“john smith”、“tom jones”。

我可以在 Solr 中使用现有的工具来复制此功能吗?

4

2 回答 2

1

我所知道的最接近 SolrJ 的是solrj-criteria项目。不过,它目前似乎没有维护。

于 2011-06-29T00:28:22.267 回答
0

Solr 提供了多种查询和索引选项。因此,可以通过在配置文件中定义自定义类型来使包含带有空格的关键字的字段成为可能(请参阅此处)。可以通过指定自定义 QueryParser 来实现其中带有间隔关键字的查询。(见这里

Solr 本身并没有在 API 中提供 QueryStringBuilder。实际上,Solr 本身根本不提供任何 API 类,因为所有交互都是通过通过 Http 发布消息来完成的。有 Java、.NET 和 PHP 等的客户端库。在 SolrNet api 中有一个 SolrMultipleCriteriaQuery,它与 CompassQueryStringBuilder 非常相似。

于 2011-06-27T21:49:15.317 回答