Hibernate Search无法设置默认的tokenizer

时间:2017-05-30 20:11:46

标签: java hibernate hibernate-search

我已经创建了一个自定义分析器,我现在想成为默认分析器。 我的分析仪看起来像:

@AnalyzerDef(name="customanalyzer",
tokenizer = @TokenizerDef(factory = WhitespaceTokenizerFactory.class),
filters = {
    @TokenFilterDef(factory = LowerCaseFilterFactory.class),
})

它很有效。但我必须在每个实体上写下

@Analyzer(definition = "customanalyzer")

我不想这样做。

所以我试着把我的分析器放到我的application.yml中 它适用于过滤器,但不适用于标记器

我的application.yml看起来像:

spring:
  ...
  jpa:
    hibernate:
      ...
    properties:
      hibernate:
        search:
          default:
            directory_provider: filesystem
            indexBase: [removed]
          analyzer:
            tokenizer: WhitespaceTokenizerFactory   <-- this line is not working
            filter: LowerCaseFilterFactory

有人能帮助我吗? 提前致谢

1 个答案:

答案 0 :(得分:2)

您可以使用配置属性为所有实体设置默认分析器:

hibernate.search.analyzer=customanalyzer