java 查es
1.1依赖
<dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>6.8.5</version> </dependency>
1.2代码
import org.apache.http.HttpHost; import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.RequestOptions; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestHighLevelClient; import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.IdsQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.builder.SearchSourceBuilder; import java.io.IOException; public class RestClientTest { public static void main(String[] args) throws IOException { HttpHost httpHost = new HttpHost("localhost",9200); RestHighLevelClient restHighLevelClient = new RestHighLevelClient(RestClient.builder(httpHost)); BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); IdsQueryBuilder idsQueryBuilder = QueryBuilders.idsQuery().addIds("com.fa.qq"); boolQueryBuilder.must(idsQueryBuilder); SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); searchSourceBuilder.query(boolQueryBuilder); SearchRequest searchRequest = new SearchRequest(); searchRequest.indices("app_list_dim"); searchRequest.source( searchSourceBuilder ); SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT); SearchHits hits = searchResponse.getHits(); for (SearchHit hit : hits) { System.out.println(hit.getSourceAsString()); } } }
2.1依赖
<dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>transport</artifactId> <version>6.2.4</version> </dependency>
2.2代码
import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.TransportAddress; import org.elasticsearch.index.query.MatchAllQueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.TermQueryBuilder; import org.elasticsearch.search.SearchHit; import org.elasticsearch.transport.client.PreBuiltTransportClient; import java.net.InetAddress; import java.net.UnknownHostException; public class EsClient { public static void main(String[] args) throws UnknownHostException { //指定集群 Settings settings = Settings.builder().put("cluster.name", "elasticsearch").build(); // 创建访问es的客户端,es中,9200是http通讯的端口号,9300 是tcp通讯的端口号 TransportClient client = new PreBuiltTransportClient(settings) .addTransportAddress(new TransportAddress(InetAddress.getByName("127.0.0.1"),9300)); // 数据查询 // GetResponse response = client.prepareGet("lib3", "user", "1").execute().actionGet(); // 查询所有 // MatchAllQueryBuilder query = QueryBuilders.matchAllQuery(); // term 查询 TermQueryBuilder query = QueryBuilders.termQuery("interests", "喜欢喝酒"); SearchResponse response = client.prepareSearch("lib3") .setTypes("user") .setQuery(query) // .setSize(3) .get(); for (SearchHit hit : response.getHits()) { System.out.println(hit.getSourceAsString()); } client.close(); } }

浙公网安备 33010602011771号