java 中如何连接 Elasticsearch

-_- 采用ElasticSearch提供的Java API实现

开发环境

  • java 1.8
  • elasticsearch 5.3.0

使用TransportClient实现java客户端

public TransportClient getClient(){
        try {
            TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
                    .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("localhost"), 9300));
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }

注意事项

  • 客户端和集群端使用相同的版本
  • 注意端口,es默认http端口9200,tcp端口9300
  • 当我们连接es集群可能会抛出异常,我们需要导入log4j包,就可以完美运行了
java.lang.NoSuchMethodError: org.apache.logging.log4j.Logger.debug(Ljava/lang/String;Ljava/lang/Object;)V

附赠

由于使用gradle构建的项目,赠送依赖一份

dependencies {
    compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.8.2'
    compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.8.2'
    compile group: 'org.elasticsearch.client', name: 'transport', version: '5.3.0'
}

再附送maven国内仓库地址一份(可能大家都知道了)

http://maven.aliyun.com/nexus/content/repositories/jcenter

传送门

Elasticsearch官方文档

你可能感兴趣的:(java 中如何连接 Elasticsearch)