最近遇到了一个叫ElasticSearch盆友,用它玩了一下查询游戏:
List<Map<String, Object>> dataList = new ArrayList<Map<String, Object>>();
Client client = null;
try{
//获取Elasticsearch client对象
client = getEsClient();
//设置查询条件(类似sql中 eventid = eventid )
QueryBuilder qb = QueryBuilders.boolQuery().must(QueryBuilders.termQuery("eventid", eventid));
// 设置ES中 indexName 和 indexType,以及QueryBuilders 对象
SearchRequestBuilder requestBuilder = client.prepareSearch(EventBean.indexName)
.setTypes(EventBean.indexType)
.setQuery(qb);
//执行查询 (可以设置排序、分页)
SearchResponse actionGet = requestBuilder.addSort(SortBuilders.fieldSort("occurtime").order(SortOrder.DESC))
.setFrom((pageNum-1) * pageSize)
.setSize(pageNum * pageSize)
.execute().actionGet();
//遍历查询结