【问题标题】:Lucene seach multiple or single field based on search stringLucene 根据搜索字符串搜索多个或单个字段
【发布时间】:2014-12-29 12:22:28
【问题描述】:

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

【问题讨论】:

    标签: hibernate lucene


    【解决方案1】:

    我假设您的索引中有两个字段标题、描述,并且您想根据您的文本框输入在 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 代码中操作在文本框中传递的内容(带有或不带有 'title:')并基于此创建 lucene 查询。

    在我看来,这是一种糟糕的用户体验,您应该有一个文本框和几个带有字段名称的“复选框”(例如标题复选框、描述复选框)或多选框或类似的东西。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多