Elasticsearch Java-Api 获取所有索引

前言

EsConfig连接

@Component
public class EsConfig {
          
   
    
    public RestHighLevelClient getEsHighInit2() {
          
   
        RestClientBuilder http = RestClient.builder(new HttpHost("127.0.0.1", 9200, "http"))
                .setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() {
          
   
                    @Override
                    public RequestConfig.Builder customizeRequestConfig(RequestConfig.Builder requestConfigBuilder) {
          
   
                        requestConfigBuilder.setConnectTimeout(700000);
                        requestConfigBuilder.setSocketTimeout(600000);
                        requestConfigBuilder.setConnectionRequestTimeout(100000);
                        return requestConfigBuilder;
                    }
                });
        return new RestHighLevelClient(http);

    }
}

TEST测试

@org.junit.Test
public void aaaa() throws IOException {
          
   
        //获取es连接
        RestHighLevelClient esHighInit = esConfig.getEsHighInit2();
        List<Map<String, Object>> resultList = new ArrayList<>();
        GetAliasesRequest request = new GetAliasesRequest();
        GetAliasesResponse alias = esHighInit.indices().getAlias(request, RequestOptions.DEFAULT);
        Map<String, Set<AliasMetaData>> map = alias.getAliases();
        map.forEach((k, v) -> {
          
   
            if (!k.startsWith(".")) {
          
   //忽略elasticesearch 默认的
                Map map1 = new HashMap();
                map1.put("indexName", k);
                resultList.add(map1);
            }
        });

        System.out.println(objectMapper.writeValueAsString(resultList));
        //[{"indexName":"%{test222}"},{"indexName":"test"}]
}
推荐文章 Spring Cloud Alibaba 系列学习笔记
经验分享 程序员 微信小程序 职场和发展