elasticsearch2.1.1实现范围搜索

来源:互联网 发布:little darling mac 编辑:程序博客网 时间:2024/05/16 10:23

直接上代码,网上低版本的一些方法都已经废弃了

public static void test1(){
String index = "zhongdi";//索引

QueryBuilder queryBuilder1 =QueryBuilders.rangeQuery("Lon").from(100).to(129); 
QueryBuilder queryBuilder2 =QueryBuilders.rangeQuery("Lat").from(12.1233).to(20); 

SearchResponse response = ESTools.client.prepareSearch(index) 
.setTypes("SzControlPoint", "GPSControlPoint", "TriControlPoint") //索引类型
.setSearchType(SearchType.DFS_QUERY_THEN_FETCH)
.setPostFilter(queryBuilder1)
.setPostFilter(queryBuilder2)
//.setQuery(QueryBuilders.fieldQuery("name", "张三"))// Query 
.setFrom(0).setSize(6000).setExplain(true) 
.execute() 
.actionGet();
//.setQuery(qsqb);
SearchHits searchHits = response.getHits();// 获取搜索的文档结果
SearchHit[] hites = searchHits.getHits();
for (int i = 0; i < hites.length; i++) {
SearchHit hit = hites[i];
String json = hit.getSourceAsString();
System.out.println(json);
//list.add(json);
}
//HashSet h = new HashSet(list);
//list.clear();
//list.addAll(h); 
//jsonArray2 = JSONArray.fromObject( list );
//String searchResult = jsonArray2.toString();
//return searchResult;

}

0 0
原创粉丝点击