Lucene基于搜索字符串搜索多个或单个字段

时间:2014-12-29 12:22:29

标签: hibernate lucene

我有一个带文本框的jsp进入搜索,对象包含两个字段标题,描述。 在这里,如果我们输入标题:'Rin'在搜索框中它应该只搜索标题,如果'Rin'那么应该搜索两个字段。请帮助。

1 个答案:

答案 0 :(得分:0)

我假设您在索引中有两个字段标题,描述,并且您希望根据文本框输入在lucene索引上触发两个不同的查询?

1) search box input = "title:Rin"
   query = "title:Rin"

2) search box input = "Rin"
   query = "title:Rin OR description:Rin"  
   you can also use BooleanQuery with Occur.SHOULD for preparing your query.

在您的JSP / UI代码中操纵文本框中传递的内容(使用'标题:'或不使用),并基于此创建lucene查询。

在我看来,它的用户体验不佳,你应该有一个文本框和几个"复选框"使用字段名称(如标题的复选框,说明的复选框)或多选框或等效的名称。