您当前的位置: 首页 >  qq_34412985 ar

es工具类AbstractElasticSearch

qq_34412985 发布时间:2019-08-07 20:24:09 ,浏览量:2

 
import com.alibaba.fastjson.JSON;
 
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.elasticsearch.action.bulk.BulkRequestBuilder;
import org.elasticsearch.action.bulk.BulkResponse;
import org.elasticsearch.action.get.GetResponse;
import org.elasticsearch.action.get.MultiGetItemResponse;
import org.elasticsearch.action.get.MultiGetRequestBuilder;
import org.elasticsearch.action.get.MultiGetResponse;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.search.SearchRequestBuilder;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.update.UpdateRequest;
import org.elasticsearch.action.update.UpdateResponse;
import org.elasticsearch.client.Client;
import org.elasticsearch.cluster.metadata.MappingMetaData;
import org.elasticsearch.common.collect.ImmutableOpenMap;
import org.elasticsearch.common.unit.TimeValue;
import org.elasticsearch.common.xcontent.XContentType;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.sort.SortBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.concurrent.ExecutionException;

/**
 * ES搜索服务的抽象类
 *
 
 *
 * @param
 */
public abstract class AbstractElasticSearch {
    /** 日志记录 */
    public static final Logger logger = LoggerFactory.getLogger(AbstractElasticSearch.class);

    // 创建访问ES服务器的客户端

    protected Client client = ElasticSearchClientHelper.getInstance().getClient();

    /**
     * 索引名称 相当于数据库的数据名称
     *
     * @return
     */
    protected abstract String getIndex();

    /**
     * 类型名称 相当于数据库的表名
     *
     * @return
     */
    protected abstract String getType();

    /**
     * 获取集成类的类对象
     *
     * @return
     */
    protected abstract Class getBeanClass();

//    /**
//     * 自定义的查询条件 HashMap
//     *
//     * @param map
//     * @return
//     */
//    public abstract List query(HashMap map);

//    /**
//     * 将数据重新加载到ES到服务器中
//     */
//    public abstract void reLoad();

    /**
     * 将list集合转换为key为id和value为对象的map
     *
     * @param list
     * @return
     */
    protected  HashMap listToMap(List list){
        if (list == null || list.size()

关注
打赏
查看更多评论

qq_34412985

暂无认证

  • 2浏览

    0关注

    957博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录