|NO.Z.00034|——————————|BigDataEnd|——|Hadoop&ElasticSearch.V34|——|ELK.v34|集群|Java API操作ES.V2|

一、Java API操作ES:创建client
### --- 创建Client

package com.yanqi.es;


import org.apache.http.HttpHost;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.junit.Test;

public class ESDemo {
~~~     # 步骤一:准备一个highlevel client
    @Test
    public void init() {
        final RestHighLevelClient highLevelClient = new  RestHighLevelClient( RestClient.builder(
                new HttpHost("hadoop01", 9200, "http"),
                new HttpHost("hadoop02", 9200, "http"),
                new HttpHost("hadoop03", 9200, "http")
        ));
        System.out.println(highLevelClient.cluster().toString());
    }
}
### --- 编译打印

D:\JAVA\jdk1.8.0_231\bin\java.exe -ea -Didea.test.cyclic.buffer.size=1048576 "-javaagent:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar=51762:D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\bin" -Dfile.encoding=UTF-8 -classpath "D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\lib\idea_rt.jar;D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\plugins\junit\lib\junit5-rt.jar;D:\IntelliJIDEA\IntelliJ IDEA 2019.3.3\plugins\junit\lib\junit-rt.jar;D:\JAVA\jdk1.8.0_231\jre\lib\charsets.jar;D:\JAVA\jdk1.8.0_231\jre\lib\deploy.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\access-bridge-64.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\cldrdata.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\dnsns.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\jaccess.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\jfxrt.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\localedata.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\nashorn.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\sunec.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\sunjce_provider.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\sunmscapi.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\sunpkcs11.jar;D:\JAVA\jdk1.8.0_231\jre\lib\ext\zipfs.jar;D:\JAVA\jdk1.8.0_231\jre\lib\javaws.jar;D:\JAVA\jdk1.8.0_231\jre\lib\jce.jar;D:\JAVA\jdk1.8.0_231\jre\lib\jfr.jar;D:\JAVA\jdk1.8.0_231\jre\lib\jfxswt.jar;D:\JAVA\jdk1.8.0_231\jre\lib\jsse.jar;D:\JAVA\jdk1.8.0_231\jre\lib\management-agent.jar;D:\JAVA\jdk1.8.0_231\jre\lib\plugin.jar;D:\JAVA\jdk1.8.0_231\jre\lib\resources.jar;D:\JAVA\jdk1.8.0_231\jre\lib\rt.jar;E:\NO.Z.80000.Hadoop.project\elasticsearch\target\classes;C:\Users\Administrator\.m2\repository\org\elasticsearch\client\elasticsearch-rest-high-level-client\7.3.0\elasticsearch-rest-high-level-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\client\elasticsearch-rest-client\7.3.0\elasticsearch-rest-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpclient\4.5.8\httpclient-4.5.8.jar;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpcore\4.4.11\httpcore-4.4.11.jar;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpasyncclient\4.1.4\httpasyncclient-4.1.4.jar;C:\Users\Administrator\.m2\repository\org\apache\httpcomponents\httpcore-nio\4.4.11\httpcore-nio-4.4.11.jar;C:\Users\Administrator\.m2\repository\commons-codec\commons-codec\1.11\commons-codec-1.11.jar;C:\Users\Administrator\.m2\repository\commons-logging\commons-logging\1.1.3\commons-logging-1.1.3.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\plugin\parent-join-client\7.3.0\parent-join-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\plugin\aggs-matrix-stats-client\7.3.0\aggs-matrix-stats-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\plugin\rank-eval-client\7.3.0\rank-eval-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\plugin\lang-mustache-client\7.3.0\lang-mustache-client-7.3.0.jar;C:\Users\Administrator\.m2\repository\com\github\spullara\mustache\java\compiler\0.9.3\compiler-0.9.3.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch\7.3.0\elasticsearch-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch-core\7.3.0\elasticsearch-core-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch-secure-sm\7.3.0\elasticsearch-secure-sm-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch-x-content\7.3.0\elasticsearch-x-content-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\yaml\snakeyaml\1.17\snakeyaml-1.17.jar;C:\Users\Administrator\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.8.11\jackson-core-2.8.11.jar;C:\Users\Administrator\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-smile\2.8.11\jackson-dataformat-smile-2.8.11.jar;C:\Users\Administrator\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.8.11\jackson-dataformat-yaml-2.8.11.jar;C:\Users\Administrator\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-cbor\2.8.11\jackson-dataformat-cbor-2.8.11.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch-geo\7.3.0\elasticsearch-geo-7.3.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-core\8.1.0\lucene-core-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-analyzers-common\8.1.0\lucene-analyzers-common-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-backward-codecs\8.1.0\lucene-backward-codecs-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-grouping\8.1.0\lucene-grouping-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-highlighter\8.1.0\lucene-highlighter-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-join\8.1.0\lucene-join-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-memory\8.1.0\lucene-memory-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-misc\8.1.0\lucene-misc-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-queries\8.1.0\lucene-queries-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-queryparser\8.1.0\lucene-queryparser-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-sandbox\8.1.0\lucene-sandbox-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-spatial\8.1.0\lucene-spatial-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-spatial-extras\8.1.0\lucene-spatial-extras-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-spatial3d\8.1.0\lucene-spatial3d-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\apache\lucene\lucene-suggest\8.1.0\lucene-suggest-8.1.0.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\elasticsearch-cli\7.3.0\elasticsearch-cli-7.3.0.jar;C:\Users\Administrator\.m2\repository\net\sf\jopt-simple\jopt-simple\5.0.2\jopt-simple-5.0.2.jar;C:\Users\Administrator\.m2\repository\com\carrotsearch\hppc\0.8.1\hppc-0.8.1.jar;C:\Users\Administrator\.m2\repository\joda-time\joda-time\2.10.2\joda-time-2.10.2.jar;C:\Users\Administrator\.m2\repository\com\tdunning\t-digest\3.2\t-digest-3.2.jar;C:\Users\Administrator\.m2\repository\org\hdrhistogram\HdrHistogram\2.1.9\HdrHistogram-2.1.9.jar;C:\Users\Administrator\.m2\repository\org\elasticsearch\jna\4.5.1\jna-4.5.1.jar;C:\Users\Administrator\.m2\repository\junit\junit\4.12\junit-4.12.jar;C:\Users\Administrator\.m2\repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\Users\Administrator\.m2\repository\org\testng\testng\6.14.3\testng-6.14.3.jar;C:\Users\Administrator\.m2\repository\com\beust\jcommander\1.72\jcommander-1.72.jar;C:\Users\Administrator\.m2\repository\org\apache-extras\beanshell\bsh\2.0b6\bsh-2.0b6.jar;C:\Users\Administrator\.m2\repository\org\apache\logging\log4j\log4j-core\2.5\log4j-core-2.5.jar;C:\Users\Administrator\.m2\repository\org\apache\logging\log4j\log4j-api\2.5\log4j-api-2.5.jar" com.intellij.rt.junit.JUnitStarter -ideVersion5 -junit4 com.yanqi.es.ESDemo

~~~输出参数:可以打印出来,说明可以连接到es集群客户端成功
org.elasticsearch.client.ClusterClient@65d6b83b

Process finished with exit code 0
二、编程实现:定版编程:定义的client端
### --- 把client提取出来

~~~     # 定义client编程实现:标准
package com.yanqi.es;

import org.apache.http.HttpHost;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import java.io.IOException;

public class ESDemo {

    // 步骤一:准备一个highlevel client
    RestHighLevelClient client;
    @Before
    public void init() {
        final RestHighLevelClient highLevelClient = new  RestHighLevelClient( RestClient.builder(
                new HttpHost("hadoop01", 9200, "http"),
                new HttpHost("hadoop02", 9200, "http"),
                new HttpHost("hadoop03", 9200, "http")
        ));
        // System.out.println(highLevelClient.cluster().toString());
        client = highLevelClient;
    }
    
    // 最后步骤:关闭客户端
    @After
    public void destory() {
        if (client != null) {
            try {
                client.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(13)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示