我对弹性搜索非常陌生
我正在尝试理解以下代码:
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”相匹配。
干杯
答案 0 :(得分:0)
在页面中,它提到Talk
类是Bean。 Bean实施Serializable
。调用result.getHits
时,请注意Talk.class
对象如何传递给方法。这意味着您基本上将命中反序列化为Talk
个实例。了解JEST Hit
类的结构,就是在从Elastisearch响应中反序列化后访问Talk
实例的方法。
有关Bean的更多信息,请参阅此处:What is a JavaBean exactly?