我用短语,通配符和关键字查询尝试了这一点,但没有什么真正有效。
...
@Field(name = "firstLastName", index = org.hibernate.search.annotations.Index.YES, analyze = Analyze.NO, store = Store.NO)
public String getFirstLastName() {
return this.firstLastName;
}
...
现在我想查询此字段并返回正确的结果,如果用户键入John Smith,Smith John或Smith Jo *或John Smi * ....
junction = junction.should(qb.keyword().wildcard().onField("firstLastName")
.matching("John Smith*").createQuery());
如果我在搜索关键字时只搜索史密斯或约翰,我就会受到欢迎。我没有分析这个领域,因为我认为我不需要,但是我尝试了两种方式都没有成功......
答案 0 :(得分:1)
这里有几个问题:
对一个非常相似的问题的答案可能有所帮助:Hibernate Search: How to use wildcards correctly?