0

私は Lucene+Hibernate Search を使用しており、Analyzer として DefualtAnalyzer を選択しています。しかし、私はそれが好きではありません。入力された値を正確に一致させたいだけです。例えば、「I love you」と入力すると、「[Ilo lov ove eyo you]」と解析されます。

I just want I just want 'I love you' は 'I love you' と一致します。'I love you' でなければ何もわかりません。

では、どのように機能させますか?

4

2 に答える 2

1

インデックス作成プロセス中に分析をオフにしたい場合は、次を使用する必要があります。

@Field.analyze(Analyze.NO)
于 2012-10-12T08:22:11.967 に答える
1

次のようにします。

    FullTextSession fullTextSession = Search.getFullTextSession(session);
    Transaction tx = fullTextSession.beginTransaction();
    Querybuilder builder=fullTextSession.getSearchFactory().
                           buildQueryBuilder().forEntity(persistentClass).get();
    Query luceneQuery=builder.keyword().
                        onField("fieldName").
                        ignoreAnalyzer().
                        matching(queryText).createQuery();
于 2012-10-12T05:13:29.410 に答える