code: public static <T> ExpressionList<T> orContains(ExpressionList<T> expressionList,
                                                     List<String> propertyNames,
                                                     String value) {
          Assert.notNull(expressionList, "expressionList must not null");
          Assert.notEmpty(propertyNames, "propertyNames must not empty");
          if (StringUtils.hasText(value)) {
              Junction<T> junction = expressionList
                      .or();
              ExpressionList<T> exp = null;
              for (String propertyName : propertyNames) {
                  if (exp == null) {
                      exp = junction.contains(propertyName, value);
                  } else {
                      exp = exp.contains(propertyName, value);
                  }
              }
              if (exp != null) {
                  exp.endOr();
                  return exp;
              }
          }
          return expressionList;
      }
docs: Return a ExpressionList specifying propertyNames contains value.
  
  @param expressionList the ExpressionList to add contains expression
  @param propertyNames  the property name of entity bean.
  @param value          contains value.
  @param <T>            the type of entity.
  @return the ExpressionList specifying propertyNames contains value.