涉及到ES查询时,需要考虑索引可能不存在的情况。
 RestHighLevelClient需要设置searchRequest.indicesOptions(IndicesOptions.LENIENT_EXPAND_OPEN);
 STRICT_EXPAND_OPEN
 主要代表如下几层意义:
 1、如果是指定索引,则索引必须存在。
 2、通配符匹配的范围为OPEN状态的索引。
 3、如果使用通配符来查找索引,未匹配到任何索引不会抛出异常。
LENIENT_EXPAND_OPEN(项目中使用这种)
 主要代表如下几层意义:
 1、允许索引不存在,指定一个不存在的索引,也不会抛出异常。
 2、通配符作用范围为OPEN状态的索引。
 3、如果使用通配符来查找索引,未匹配到任何索引不会抛出异常。
LENIENT_EXPAND_OPEN_CLOSED;
 主要代表如下几层意义:
 1、如果指定索引,该索引必须存在。
 2、通配符作用范围为OPEN、CLOSED状态的索引。
 3、如果使用通配符来查找索引,未匹配到任何索引不会抛出异常。
STRICT_EXPAND_OPEN_CLOSED;
 主要代表如下几层意义:
 1、如果指定索引,该索引必须存在。
 2、通配符作用范围为OPEN、CLOSED状态的索引。
 3、如果使用通配符来查找索引,未匹配到任何索引不会抛出异常。
STRICT_EXPAND_OPEN_FORBID_CLOSED;
 主要代表如下几层意义:
 1、如果指定索引,该索引必须存在。
 2、通配符作用范围为OPEN状态的索引。
 3、如果使用通配符查找索引,未找到索引不会抛出异常。
 4、禁止指定CLOSE状态的索引。 [6.4.0版本测试,这条规则未生效]
STRICT_SINGLE_INDEX_NO_EXPAND_FORBID_CLOSED;
 主要代表如下几层意义:
 1、指定的索引或别名必须存在。
 2、不允许使用通配符。
 3、不允许一个别名解析出多个索引的情况。
