Elasticsearch:我可以在Java客户端中设置高亮字符串吗?

时间:2014-08-03 16:01:09

标签: elasticsearch highlighting elasticsearch-java-api

我是Elasticsearch的新手。我能够在Windows提示符下运行以下查询:

{
  "query": {
    "filtered": {
      "query": {
        "term": {
          "title": "crime"
        }
      },
      "filter": {
        "term": {
          "year": 1961
        }
      }
    }
  },
  "highlight": {
    "fields": {
      "title": {}
    }
  }
}

在Java客户端中,我能够创建以下字符串并在Java客户端中设置它:

{
  "filtered": {
    "query": {
      "term": {
        "title": "crime"
      }
    },
    "filter": {
      "term": {
        "year": 1961
      }
    }
  }
}

SearchResponse sr = client.prepareSearch("book")
        .setTypes("history")
        .addHighlightedField("title")
        .setQuery(the_above_query_string)

但是,如上面的Java代码所示,我必须通过.addHighlightedField("title")添加突出显示的字段。我可以通过上面的Java代码(设置查询的方式)中的以下字符串设置高亮字段吗?

{
  "highlight": {
    "fields": {
      "title": {}
    }
  }
}

0 个答案:

没有答案