0

luke で次の lucene クエリ フレーズを実行しています。

+(debtorNumber:10200000 originalDebtorNumber:10200000) +(serviceName:"skype for"^840.0 (serviceName:for* serviceId:for*) (serviceName:skype* serviceId:skype*))

例の最初に期待される結果を示します。

マネージャー向けの Skype for Business

Microsoft Skype for Business 会議 (Plan2)

Skype for Business Conferencing の電話ダイヤルイン

等々。

hibernate search で実行された同じクエリは、異なる結果を示します:/

たとえば、次の結果が得られます。

PC、ノートブック、またはサーバーのウイルス対策保護

シン クライアントの集中管理

Skype for は 3 ページ目または 4 ページ目にあります。

Java コードは次のとおりです。

SearchManager = Search.getSearchManager(cache)
CacheQuery<MyType> query = searchManager.getQuery(booleanQuery, MyType.class)

List<MyType> pagedResulat = query
                                .maxResults(criteria.getPageSize())
                                .firstResult(Math.toIntExact(criteria.getOffset()))
                                .list()

これは、Luke で使用した上記のクエリをログに記録します

log.info("Lucene Search boolean query:" + booleanQuery);

お知らせ下さい。

4

1 に答える 1