我正在寻找一个充满土耳其语字符的字段。 例如:Müdürlük。 但是,当我尝试查询此字段时无法获得结果。我是hibernate搜索的新手。我该怎么办 ? 提前谢谢。
答案 0 :(得分:2)
可能还有其他问题(没有代码我无法分辨),但您可能想要的一件事是使用特定语言的分析器,以便“mudurluk”匹配“Müdürlük”,或者所以“伊斯坦布尔”将匹配“İstanbul”(首都点缀“i”)。
要使用注释对Hibernate Search执行此操作,请填写analyzer
注释的@Field
属性:
@Field(analyzer = @Analyzer(impl = org.apache.lucene.analysis.tr.TurkishAnalyzer.class))
String myProperty;
如果使用程序化API映射实体,则该过程应该非常相似。
有关Hibernate Search中分析器的更多详细信息,请参阅官方文档:https://docs.jboss.org/hibernate/stable/search/reference/en-US/html_single/#_analyzer
编辑:更改分析仪后,不要忘记重新索引数据。