Elasticsearch - java客户端连接
2018-02-15 11:08
232 查看
写在前面的话:读书破万卷,编码如有神
--------------------------------------------------------------------
最简单的在java客户端连接es服务器
(仅作为快速简单使用demo)
--------------------------------------------------------------------
--------------------------------------------------------------------
最简单的在java客户端连接es服务器
(仅作为快速简单使用demo)
1 package com.es.util.elasticsearch; 2 3 import lombok.Data; 4 import org.apache.log4j.Logger; 5 import org.elasticsearch.action.search.SearchRequestBuilder; 6 import org.elasticsearch.action.search.SearchResponse; 7 import org.elasticsearch.client.transport.TransportClient; 8 import org.elasticsearch.common.settings.Settings; 9 import org.elasticsearch.common.transport.InetSocketTransportAddress; 10 import org.elasticsearch.common.unit.TimeValue; 11 import org.elasticsearch.transport.client.PreBuiltTransportClient; 12 import org.springframework.stereotype.Component; 13 14 import javax.annotation.PostConstruct; 15 import java.net.InetAddress; 16 import java.net.UnknownHostException; 17 18 /** 19 * @author : huobaopaocai 20 * @date : 2018/2/15 - 10:31 21 * @Description : elasticsearch客户端 22 */ 23 @Component("elasticsearchConstant") 24 @Data 25 public class ElasticsearchConstant { 26 27 public static final Logger LOG = Logger.getLogger(ElasticsearchConstant.class); 28 29 /** 30 * es服务器地址 31 */ 32 private String host = "127.0.0.1"; 33 34 /** 35 * es服务器端口 36 */ 37 private Integer port = 9300; 38 39 /** 40 * es集群名称 41 */ 42 private String clusterName = "huobaopaocai-es-cluster"; 43 44 /** 45 * es索引名称 46 */ 47 private String esIndex = "ecommerce"; 48 49 /** 50 * es索引下type名称 51 */ 52 private String esType = "product"; 53 54 public TransportClient client = null; 55 56 private SearchRequestBuilder requestBuilder; 57 58 private Long TIME_OUT = 20L; 59 60 @PostConstruct 61 public void init() { 62 Settings settings = Settings.builder() 63 .put("cluster.name", clusterName) 64 .put("client.transport.sniff", true) 65 .put("client.transport.ping_timeout", "600s") 66 .build(); 67 try { 68 client = new PreBuiltTransportClient(settings) 69 .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(host), port)); 70 } catch (UnknownHostException e) { 71 LOG.error(e, e.getCause()); 72 } 73 } 74 75 /** 76 * 初始化SearchRequestBuilder 77 * @return 78 */ 79 public SearchRequestBuilder initRequestBuilder() { 80 requestBuilder = client.prepareSearch(esIndex).setTypes(esType); 81 return requestBuilder; 82 } 83 84 /** 85 * 执行es操作 86 * @param requestBuilder 87 * @return 88 */ 89 public SearchResponse execute(SearchRequestBuilder requestBuilder) { 90 SearchResponse searchResponse = requestBuilder.setTimeout(TimeValue.timeValueSeconds(TIME_OUT)).execute().actionGet(); 91 return searchResponse; 92 } 93 }
--------------------------------------------------------------------
相关文章推荐
- Java操作ElasticSearch之创建客户端连接
- Java操作ElasticSearch之创建客户端连接
- Java客户端连接elasticsearch5.5.3实现数据搜索(基于xpack安全管理)
- Java客户端连接elasticsearch5.5.3实现数据搜索(基于xpack安全管理)
- java实现socket客户端连接服务端
- IBM MQ JAVA客户端连接在多线程的时候特别要注意的一点
- elasticsearch中的java.io.IOException: 远程主机强迫关闭了一个现有的连接
- elasticsearch java api 创建客户端连接(Transport Client)
- java客户端连接MongoDB数据库的简单使用
- 模拟多客户端进行TCP连接[Java]
- AeroSpike Java客户端连接读写AS实例
- Apache Zookeeper zkCli.sh命令及Java客户端连接测试
- ElasticSearch(6)--使用Java客户端创建索引和映射
- elasticsearch JAVA客户端操作---搜索的过滤、分组高亮
- elasticsearch java客户端api使用(二)
- Elasticsearch系列(六)----JAVA客户端之Jest操作详解
- Java客户端连接不了安装在CentOS7上的redis解决方案
- Java版Oracle客户端简易连接程序
- java socket 进阶话题一: socket 客户端连接管理
- Java客户端通过HttpURLConnection连接Web服务器的Session保存问题