(过时)TransportClient方式连接ES

依赖

<dependency>
    <groupId>org.elasticsearch.client</groupId>
    <artifactId>transport</artifactId>
    <version>7.6.2</version>
</dependency>

获取Client

import org.elasticsearch.client.transport.TransportClient;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.transport.TransportAddress;
import org.elasticsearch.transport.client.PreBuiltTransportClient;

import java.net.InetAddress;
import java.net.UnknownHostException;

public class ESConfig {

    public static TransportClient client(){
        Settings settings = Settings.builder()
                .put("cluster.name","my-elasticsearch")
                .build();

        TransportClient client = new PreBuiltTransportClient(settings);

        TransportAddress node = null;

        try {
            node = new TransportAddress(InetAddress.getByName("localhost"),9300);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
        client.addTransportAddress(node);
        
        return client;
    }
}

注意: 9300位tcp端口,9200位http端口

使用

import org.elasticsearch.action.get.GetRequestBuilder;
import org.elasticsearch.client.transport.TransportClient;

public class Test {

    public static void main(String[] args) {
        TransportClient client = ESConfig.client();

        GetRequestBuilder getRequestBuilder = client.prepareGet("person","_doc","6e1cb2ac-2eab-4b0b-bbc2-017d63748c4f");
        System.out.println(getRequestBuilder.get().getSource().toString());
    }
}

版权声明:本文为lubin2016原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。