java 获取elasticsearch Client以及 判断是否存在此索引
2017-05-15 16:33
405 查看
总结一下:使用java客户端 连接 ES,获取client
package com.testt.util; import java.util.ArrayList; import java.util.List; import org.elasticsearch.ElasticsearchException; import org.elasticsearch.action.admin.indices.exists.indices.IndicesExistsRequest; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.ImmutableSettings; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.InetSocketTransportAddress; /** * ES 测试工具类 * @author zhangqingzhou * */ public abstract class EsClientUtil{ /** * 是否为调试 */ private static boolean Debug = false; public Object execute(Object ... obj){ @SuppressWarnings("rawtypes") List rsList = new ArrayList<>(); ESClient esclient = null; try { esclient = (!Debug)?getDefaultDelegateClient():buildClient(); if(null == esclient) return rsList; return executeIt(esclient, obj); } catch (Exception e) { }finally{ ESClientFactory.me().closeClient(esclient); } return rsList; } /** * 接口 的 执行方法,需要重写 * @param esclient * @param obj * @return */ protected abstract Object executeIt(ESClient esclient,Object ... obj); public static ESClient buildClient(){ Settings settings = ImmutableSettings.settingsBuilder() .put("client.transport.sniff", true).put("cluster.name", "集群名称").build(); @SuppressWarnings("resource") TransportClient client = new TransportClient(settings) .addTransportAddress(new InetSocketTransportAddress("127.0.0.1", 9300)); ESClient delegateClient = new ESClient(client, Type.local); return delegateClient; } public static ESClient getDefaultDelegateClient(){ ESClient cupidClient = null; try { // 获取系统 ES集群client 已经封装好的 cupidClient = ESClientFactory.me().getDefaultDelegateClient(); } catch (Exception e) { } return (!Debug)?cupidClient :buildClient(); } /** * 判断 ES集群中 是否含有 此索引名的索引 * @param indexName * @return */ public static boolean isExistIndex(String indexName){ boolean flag = false; ESClient client =getDefaultDelegateClient(); try { if(client != null){ flag =client.admin().indices().exists( new IndicesExistsRequest() .indices(new String[]{indexName})) .actionGet().isExists(); } } catch (ElasticsearchException e) { // TODO Auto-generated catch block e.printStackTrace(); } return flag; } }
相关文章推荐
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- elasticsearch判断索引是否存在
- Elasticsearch判断index是否存在--java实现
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录
- JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤
- 通过svnkit,获取最新的revision以及判断某个revsion是否存在
- android 获取路径目录方法以及判断目录是否存在,创建目录
- java判断循环数组是否连续并获取不连续的项以及重复项
- svn判断通过svnkit,获取最新的revision以及判断某个revsion是否存在
- java判断循环数组是否连续并获取不连续的项以及重复项
- android 获取路径目录方法以及判断目录是否存在,创建目录
- android 获取路径目录方法以及判断目录是否存在,创建目录