com.querydsl.core.types.ExpressionUtils.operation()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(6.6k)|赞(0)|评价(0)|浏览(201)

本文整理了Java中com.querydsl.core.types.ExpressionUtils.operation()方法的一些代码示例,展示了ExpressionUtils.operation()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ExpressionUtils.operation()方法的具体详情如下:
包路径:com.querydsl.core.types.ExpressionUtils
类名称:ExpressionUtils
方法名:operation

ExpressionUtils.operation介绍

[英]Create a new Operation expression
[中]创建新的操作表达式

代码示例

代码示例来源:origin: querydsl/querydsl

@SuppressWarnings("unchecked")
protected CollectionOperation(Class<? super E> type, Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation((Class) Collection.class, op, args));
  this.opMixin = (OperationImpl) super.mixin;
  this.elementType = (Class<E>) type;
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create a {@code count(source)} expression
 *
 * @param source source
 * @return count(source)
 */
public static Expression<Long> count(Expression<?> source) {
  return operation(Long.class, Ops.AggOps.COUNT_AGG, source);
}

代码示例来源:origin: querydsl/querydsl

protected DateTimeOperation(Class<? extends T> type, Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation(type, op, args));
  this.opMixin = (OperationImpl<T>) mixin;
}

代码示例来源:origin: querydsl/querydsl

protected PolygonOperation(Class<? extends T> type, Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation(type, op, args));
  this.opMixin = (OperationImpl<T>) mixin;
}

代码示例来源:origin: querydsl/querydsl

protected StringOperation(Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation(String.class, op, args));
  this.opMixin = (OperationImpl<String>) mixin;
}

代码示例来源:origin: querydsl/querydsl

protected TimeOperation(Class<? extends T> type, Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation(type, op, args));
  this.opMixin = (OperationImpl<T>) mixin;
}

代码示例来源:origin: querydsl/querydsl

protected JTSLineStringOperation(Class<? extends T> type, Operator op, ImmutableList<Expression<?>> args) {
  super(ExpressionUtils.operation(type, op, args));
  this.opMixin = (OperationImpl<T>) mixin;
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create a new Operation expression
 *
 * @param type type of expression
 * @param operator operator
 * @param args operation arguments
 * @return operation expression
 */
public static <T> Operation<T> operation(Class<? extends T> type, Operator operator,
                     Expression<?>... args) {
  return operation(type, operator, ImmutableList.copyOf(args));
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create an expression out of the given order specifiers
 *
 * @param args order
 * @return expression for order
 */
public static Expression<?> orderBy(List<OrderSpecifier<?>> args) {
  return operation(Object.class, Ops.ORDER, ConstantImpl.create(args));
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create an alias expression with the given source and alias
 *
 * @param <D> type of expression
 * @param source source
 * @param alias alias
 * @return source as alias
 */
public static <D> Expression<D> as(Expression<D> source, Path<D> alias) {
  return operation(alias.getType(), Ops.ALIAS, source, alias);
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create an alias for the expression
 *
 * @return this as alias
 */
@SuppressWarnings("unchecked")
public Expression<T> as(Path<T> alias) {
  return ExpressionUtils.operation(getType(),Ops.ALIAS, this, alias);
}

代码示例来源:origin: querydsl/querydsl

/**
 * Create an alias for the expression
 *
 * @return alias expression
 */
@SuppressWarnings("unchecked")
public Expression<T> as(Path<T> alias) {
  return ExpressionUtils.operation(getType(), Ops.ALIAS, this, alias);
}

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      Expression<String> concatenated = ExpressionUtils.operation(String.class, Ops.CONCAT, (Expression) arg, PERCENT);
      return ExpressionUtils.operation(String.class, Ops.LOWER, concatenated);
    } else {
      return escapeForLike(String.valueOf(arg).toLowerCase()) + "%";
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      Expression<String> concatenated = ExpressionUtils.operation(String.class, Ops.CONCAT, PERCENT, (Expression) arg);
      return ExpressionUtils.operation(String.class, Ops.CONCAT, concatenated, PERCENT);
    } else {
      return "%" + escapeForLike(String.valueOf(arg)) + "%";
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      Expression<String> concatenated = ExpressionUtils.operation(String.class, Ops.CONCAT, PERCENT, (Expression) arg);
      return ExpressionUtils.operation(String.class, Ops.LOWER, concatenated);
    } else {
      return "%" + escapeForLike(String.valueOf(arg).toLowerCase());
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      return ExpressionUtils.operation(String.class, Ops.LOWER, (Expression) arg);
    } else {
      return String.valueOf(arg).toLowerCase();
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      return ExpressionUtils.operation(String.class, Ops.UPPER, (Expression) arg);
    } else {
      return String.valueOf(arg).toUpperCase();
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant<?>) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      return ExpressionUtils.operation(String.class, Ops.CONCAT, (Expression) arg, PERCENT);
    } else {
      return escapeForLike(String.valueOf(arg)) + "%";
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
  public Object apply(Object arg) {
    if (arg instanceof Constant) {
      return ConstantImpl.create(apply(arg.toString()).toString());
    } else if (arg instanceof Expression) {
      return ExpressionUtils.operation(String.class, Ops.CONCAT, PERCENT, (Expression) arg);
    } else {
      return "%" + escapeForLike(String.valueOf(arg));
    }
  }
};

代码示例来源:origin: querydsl/querydsl

@Override
public Expression<?> visit(Operation<?> expr, C context) {
  ImmutableList<Expression<?>> args = visit(expr.getArgs(), context);
  if (args.equals(expr.getArgs())) {
    return expr;
  } else if (expr instanceof Predicate) {
    return ExpressionUtils.predicate(expr.getOperator(), args);
  } else {
    return ExpressionUtils.operation(expr.getType(), expr.getOperator(), args);
  }
}

相关文章