springboot使用RestHighLevelClient批量插入

Posted cq-yangzhou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot使用RestHighLevelClient批量插入相关的知识,希望对你有一定的参考价值。

1、引入maven(注意版本要一致

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
        </dependency>
        <dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>6.4.3</version>
        </dependency>   

2、配置.properties

spring.elasticsearch.rest.uris=http://127.0.0.1:9200
spring.elasticsearch.rest.password=
spring.elasticsearch.rest.username=

3、使用

 @Autowired
    private RestHighLevelClient restHighLevelClient;

 private void bulkPutIndex(List<Map<String, Object>> list ) throws IOException {
        if (JudgeUtil.isEmpty(list)){
            return;
        }
        String index = "test";
        String type = "test";
        int size = list.size();
        BulkRequest request = new BulkRequest();
        for (int i = 0; i < size; i++) {
            Map<String, Object> map = list.get(i);
       //这里必须每次都使用new IndexRequest(index,type),不然只会插入最后一条记录
    request.add(new IndexRequest(index,type).opType("create").id(map.remove("id").toString()).source(map)); 
    
      restHighLevelClient.bulk(request); 

  } 
}

 参考地址:https://www.cnblogs.com/leeSmall/p/9218779.html

以上是关于springboot使用RestHighLevelClient批量插入的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot使用·下篇(SpringBoot集成MyBatis+日志打印+MyBatis-plus)

SpringBoot使用·下篇(SpringBoot集成MyBatis+日志打印+MyBatis-plus)

SpringBoot.14.SpringBoot使用jsp模板打包成jar

SpringBoot.14.SpringBoot使用jsp模板打包成jar

SpringBoot.14.SpringBoot使用jsp模板打包成jar

SpringBoot.14.SpringBoot使用jsp模板打包成jar