2016-12-22 4 views
1

Ich versuche ein Feld mit türkischen Zeichen zu suchen. Zum Beispiel: Müdürlük. Aber wenn ich versuche, dieses Feld abzufragen nicht in der Lage, Ergebnisse zu erhalten. Ich bin neu in der Suche im Winterschlaf. Was soll ich machen ? Vielen Dank im Voraus.Hibernate Search Turkish Charachter

Antwort

2

Es kann andere Probleme geben (ich kann nicht ohne den Code sagen), aber eine Sache, die Sie wahrscheinlich wünschen, ist, einen sprachspezifischen Analysator zu verwenden, so dass "mudurluk" zum Beispiel "Müdürlük" entspricht, oder dass "istanbul" mit "İstanbul" übereinstimmt (Hauptstadt punktiert "i").

Um das zu tun mit Hibernate Search Annotationen verwenden, in dem analyzer Attribute Ihrer @Field Anmerkung füllen:

@Field(analyzer = @Analyzer(impl = org.apache.lucene.analysis.tr.TurkishAnalyzer.class)) 
String myProperty; 

Wenn Sie Ihr Unternehmen mit dem programmatischen API abgebildet, sollte der Prozess ziemlich ähnlich sein.

Bitte beachten Sie die offizielle Dokumentation für weitere Details über Analysatoren in Hibernate Search: https://docs.jboss.org/hibernate/stable/search/reference/en-US/html_single/#_analyzer

EDIT: vergessen Sie nicht, Ihre Daten indizieren, nachdem Sie den Analysator geändert.

Verwandte Themen