相关疑难解决方法(0)

Spring Data Elasticsearch id与_id

我使用弹性版本2.2.0的Spring Data Elasticsearch 2.0.1.

我的DAO类似于:

import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;    

@Document(indexName = "myIndex")
public class MyDao {
    @Id
    private String id;

    public String getId() { return id; }
    public void setId(String id) { this.id = id; }

    <other fields, setters, getters omitted>
}
Run Code Online (Sandbox Code Playgroud)

使用存储库将对象保存到ES,_id可以正确填充元数据字段.id字段的getter和setter方法正确返回_id元数据字段的值.但是字段中的id _source字段为空.

2个问题:1)为什么id字段为空?2)id字段为空是否重要?

java elasticsearch spring-data-elasticsearch

11
推荐指数
1
解决办法
6235
查看次数

Elasticsearch内部命中java api

我正在尝试使用Java API实现弹性搜索的内部命中,但我找不到任何关于它的文档或其他人正在使用的示例.我有我的JSON搜索,其工作方式如下:

{
  "query": {
    "filtered": {
      "query": {
        "match_all": {}
      },
      "filter": {
        "nested": {
          "path": "locations",
          "filter": {
            "geo_distance": {
              "distance": "20km",
              "locations.address.geoLocation": {
                "lat": 38.07061,
                "lon": -76.77514
              }
            }
          },
          "inner_hits": {}
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我在elasticsearch库中看到了InnerHitsBuilder和addInnerHit方法,但我找不到有关如何使用它们的文档.

hit nested java-api elasticsearch

5
推荐指数
1
解决办法
4200
查看次数