/**
* 系统环境: vm12 下的centos 7.2
* 当前安装版本: elasticsearch-2.4.0.tar.gz
*/
QueryBuilder 是es中提供的一个查询接口, 可以对其进行参数设置来进行查用擦还训
package com.wenbronk.javaes; import java.net.InetSocketAddress; import java.util.ArrayList; import java.util.Iterator; import java.util.Map.Entry; import org.elasticsearch.action.ListenableActionFuture; import org.elasticsearch.action.get.GetRequestBuilder; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchType; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.text.Text; import org.elasticsearch.common.transport.InetSocketTransportAddress; import org.elasticsearch.common.unit.TimeValue; import org.elasticsearch.index.query.IndicesQueryBuilder; import org.elasticsearch.index.query.NestedQueryBuilder; import org.elasticsearch.index.query.QueryBuilder; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.QueryStringQueryBuilder; import org.elasticsearch.index.query.RangeQueryBuilder; import org.elasticsearch.index.query.SpanFirstQueryBuilder; import org.elasticsearch.index.query.WildcardQueryBuilder; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.junit.Before; import org.junit.Test; /** * java操作查询api * @author 231 * */ public class JavaESQuery { private TransportClient client; @Before public void testBefore() { Settings settings = Settings.settingsBuilder().put("cluster.name", "wenbronk_escluster").build(); client = TransportClient.builder().settings(settings).build() .addTransportAddress(new InetSocketTransportAddress(new InetSocketAddress("192.168.50.37", 9300))); System.out.println("success to connect escluster"); } /** * 使用get查询 */ @Test public void testGet() { GetRequestBuilder requestBuilder = client.prepareGet("twitter", "tweet", "1"); GetResponse response = requestBuilder.execute().actionGet(); GetResponse getResponse = requestBuilder.get(); ListenableActionFuture<GetResponse> execute = requestBuilder.execute(); System.out.println(response.getSourceAsString()); } /** * 使用QueryBuilder * termQuery("key", obj) 完全匹配 * termsQuery("key", obj1, obj2..) 一次匹配多个值 * matchQuery("key&