package com.xx.utils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.gtcom.config.RestClientConfig;
import lombok.extern.slf4j.Slf4j;
import org.elasticsearch.action.bulk.BulkItemResponse;
import org.elasticsearch.action.bulk.BulkRequest;
import org.elasticsearch.action.bulk.BulkResponse;
import org.elasticsearch.action.index.IndexResponse;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchType;
import org.elasticsearch.action.support.WriteRequest;
import org.elasticsearch.action.update.UpdateRequest;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.Requests;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.common.xcontent.XContentType;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.rest.RestStatus;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits;
import org.elasticsearch.search.aggregations.AggregationBuilders;
import org.elasticsearch.search.aggregations.Aggregations;
import org.elasticsearch.search.aggregations.bucket.terms.Terms;
import org.elasticsearch.search.aggregations.bucket.terms.TermsAggregationBuilder;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import java.io.IOException;
import java.util.*;
/**
* @author tongyinlong
* @version 1.0
* @description: TODO
* @date 2021/11/4 16:47
*/
@Slf4j
@Component
public class EsUtils {
@Autowired
@Qualifier(RestClientConfig.ES_CLIENT_1)
private RestHighLevelClient esClient1;
@Autowired
@Qualifier(RestClientConfig.ES_CLIENT_2)
private RestHighLevelClient esClient2;
/**
* ES 批量修改数据(同步)
*
* @param indexName: 索引名称
* @param primaryKeyName: 主键名称
* @param paramListJson: 数据集合JSON
* @return 批量修改结果
* @date 2021/11/4 16:40
* @author tongyinlong
**/
public boolean updateDataBatch(String indexName, String primaryKeyName, String paramListJson) {
BulkRequest bulkRequest = packBulkUpdateRequest(indexName, primaryKeyName, paramListJson);
if (bulkRequest.requests().isEmpty
es 判断空字符串字段 ,null 值
最新推荐文章于 2024-08-09 10:29:04 发布