Jest ElasticSearch Search API命中映射

时间:2017-06-15 02:05:26

标签: java elasticsearch jest

我对弹性搜索非常陌生

我正在尝试理解以下代码:

List<Hit<Talk, Void>> hits = result.getHits(Talk.class);
        for (Hit<Talk, Void> hit: hits) {
            Talk talk = hit.source;
            log.info(talk.getTitle());
        }

这直接来自:https://www.elastic.co/blog/found-java-clients-for-elasticsearch

我的问题是,Java如何知道要映射到哪个变量的字段。

基本上,Java如何知道,比如将属性“title”与Talk类的成员变量“title”相匹配。

干杯

1 个答案:

答案 0 :(得分:0)

在页面中,它提到Talk类是Bean。 Bean实施Serializable。调用result.getHits时,请注意Talk.class对象如何传递给方法。这意味着您基本上将命中反序列化为Talk个实例。了解JEST Hit类的结构,就是在从Elastisearch响应中反序列化后访问Talk实例的方法。

有关Bean的更多信息,请参阅此处:What is a JavaBean exactly?