如何在Hibernate Search 3.1.1GA中添加通配符查询

时间:2014-11-26 12:32:09

标签: hibernate-search

使用hibernate搜索时如何添加通配符查询。我正在使用Hibernate Search 3.1.1GA jar并且无法将我的jar升级到更高版本。在hibernate的高级版本中,我们可以使用Query Builder使用通配符。

我被困住了请帮助我。

1 个答案:

答案 0 :(得分:1)

我假设您指的是Hibernate Search查询DSL。像这样:

Query luceneQuery = queryBuilder
    .keyword()
      .wildcard()
    .onField("foo")
    .matching("bar*")
    .createQuery();

这个DSL确实不是Search 3.1.1的一部分,后来又添加了。在此版本中,您需要使用本机Lucene查询来构建查询。确实所有的搜索DSL都在为您构建这些本机查询。在您的情况下,您希望查看org.apache.lucene.search.WildcardQuery,或者您可以使用org.apache.lucene.queryParser.QueryParser来使用Lucene查询语法,该语法也允许使用通配符。