public class EsBasicsUtil extends Object
| 构造器和说明 |
|---|
EsBasicsUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static List<Map<String,Object>> |
groupHandle(org.elasticsearch.action.search.SearchResponse searchResponse,
String groupFiled)
分组结果处理示例
|
static List<Map<String,Object>> |
handleSearchResponse(org.elasticsearch.action.search.SearchResponse searchResponse,
String highlightField)
高亮结果集处理示例
|
static org.elasticsearch.index.query.BoolQueryBuilder |
setAdvanced(List<ConditionDTO> conditionDTOList)
多条件按照与或非拼接,返回一个新的条件块 BoolQueryBuilder
and(x=1 or x=2 ) and(y=1 or y=3) and(z!
|
static void |
setAdvancedList(org.elasticsearch.index.query.BoolQueryBuilder boolQueryBuilder,
List<List<List<ConditionDTO>>> listList)
复杂条件查询,拼接结果效果类似于:
and ((高级组合) or (高级组合) or(高级组合))
and ((高级组合) or (高级组合) or(高级组合)) and ((高级组合) or (高级组合) or(高级组合)) ... |
static org.elasticsearch.index.query.QueryBuilder |
setConSymbol(String field,
String fieldValue,
String symbol)
判断拼接条件,返回查询块
|
static void |
setEqCondition(org.elasticsearch.index.query.BoolQueryBuilder boolQueryBuilder,
List<EqDTO> eqDTOList)
设置字段等于多个值的条件拼接 拼接结果效果类似于:
and field1 in ('value1','value2','value3'...)
|
static void |
setExcludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String excludes)
设置返回数据中需要排除字段
|
static void |
setExcludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String includes,
String excludes)
设置返回数据中需要排除字段
|
static org.elasticsearch.index.query.BoolQueryBuilder |
setFieldsLike(String term,
List<String> fields)
多个字段模糊匹配同一个值
|
static void |
setHighlightField(org.elasticsearch.search.builder.SearchSourceBuilder query,
List<String> highlightFields)
设置高亮
|
static void |
setHighlightField(org.elasticsearch.search.builder.SearchSourceBuilder query,
String highlightField)
设置高亮
|
static void |
setIncludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String includes)
设置返回数据中只需要的字段
|
static org.elasticsearch.index.query.BoolQueryBuilder |
setNested(String nested,
String term,
List<String> nestedFields)
拼接嵌套条件
|
static void |
setOrderField(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
List<SortDTO> list)
设置排序
|
static void |
setPage(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
Integer startPage,
Integer pageSize)
设置分页
|
public static void setEqCondition(org.elasticsearch.index.query.BoolQueryBuilder boolQueryBuilder,
List<EqDTO> eqDTOList)
and field1 in ('value1','value2','value3'...)
and field2 in ('value1','value2','value3'...)
and field3 in ('value1','value2','value3'...)
...
public static void setAdvancedList(org.elasticsearch.index.query.BoolQueryBuilder boolQueryBuilder,
List<List<List<ConditionDTO>>> listList)
and ((高级组合) or (高级组合) or(高级组合))
and ((高级组合) or (高级组合) or(高级组合))
and ((高级组合) or (高级组合) or(高级组合))
...
public static org.elasticsearch.index.query.BoolQueryBuilder setAdvanced(List<ConditionDTO> conditionDTOList)
and(x=1 or x=2 ) and(y=1 or y=3) and(z!=1 or z!=2)...
public static org.elasticsearch.index.query.QueryBuilder setConSymbol(String field, String fieldValue, String symbol)
PS:symbol包含:
EQ 就是 EQUAL等于
GT 就是 GREATER THAN大于
LT 就是 LESS THAN小于
GTE 就是 GREATER THAN OR EQUAL 大于等于
LTE 就是 LESS THAN OR EQUAL 小于等于
LIKE 就是 模糊
public static org.elasticsearch.index.query.BoolQueryBuilder setFieldsLike(String term, List<String> fields)
public static org.elasticsearch.index.query.BoolQueryBuilder setNested(String nested, String term, List<String> nestedFields)
public static void setIncludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String includes)
public static void setExcludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String excludes)
public static void setExcludesFields(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
String includes,
String excludes)
public static void setPage(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
Integer startPage,
Integer pageSize)
public static void setOrderField(org.elasticsearch.search.builder.SearchSourceBuilder sourceBuilder,
List<SortDTO> list)
orderField 排序字段(特别注意:如果字段类型是text,需要拼接“.keyword”)
orderType 排序方式 0、降序,1、升序
public static void setHighlightField(org.elasticsearch.search.builder.SearchSourceBuilder query,
String highlightField)
public static void setHighlightField(org.elasticsearch.search.builder.SearchSourceBuilder query,
List<String> highlightFields)
public static List<Map<String,Object>> handleSearchResponse(org.elasticsearch.action.search.SearchResponse searchResponse, String highlightField)
Copyright © 2023 tan. All rights reserved.