提问者:小点点

如何在创建索引请求中创建索引类型和id?


我使用的是弹性6.3.2中的IndexRequest。现在我更改为版本7.6.2。如何使用CreateIndexRequest执行以下相同的步骤?

弹性Rest高级客户端6.3.2代码:

 public Object createIndex(Object document, String id) throws IOException {

        Map documentMapper = objectMapper.convertValue(document, Map.class);

        IndexRequest indexRequest = new IndexRequest(this.getIndexName(),
                type, id).source(documentMapper, XContentType.JSON);

        IndexResponse indexResponse = client.index(indexRequest);
        return null;
    }

切换到7.6.2后,我无法在CreateIndexRequest中创建类型、id和源。


共1个答案

匿名用户

Elasticsearch 7中不推荐使用类型。下面是代码,它适用于我使用resthighlevel客户端。

请注意,我没有使用resthighlevel客户端的CreateIndexRequest方法中的类型和id。

String indexString = jsonUtil.getStringFromFile(indexName + ".mapping");
CreateIndexRequest request = new CreateIndexRequest(indexName);
request.source(indexString, XContentType.JSON);
client.indices().create(request, RequestOptions.DEFAULT);

有关详细信息,请参阅删除类型。