クラス ValueExpressionQueryRewriter

java.lang.ObjectSE
org.springframework.data.repository.query.ValueExpressionQueryRewriter
既知の直属サブクラス
ValueExpressionQueryRewriter.EvaluatingValueExpressionQueryRewriter

public class ValueExpressionQueryRewriter extends ObjectSE
ValueExpressionQueryRewriter は、クエリ文字列内の値式を検出し、それをバインド変数に置き換えることができます。

解析プロセスの結果は、変換されたクエリ文字列を提供する ValueExpressionQueryRewriter.ParsedQuery です。代わりに、より強力な ValueExpressionQueryRewriter.EvaluatingValueExpressionQueryRewriter を生成する withEvaluationContextAccessor(QueryMethodValueEvaluationContextAccessor) を介して QueryMethodValueEvaluationContextAccessor を提供することもできます。

典型的な使用箇所は次のようになります

 ValueExpressionQueryRewriter.EvaluatingValueExpressionQueryRewriter rewriter = ValueExpressionQueryRewriter
                .of(valueExpressionParser, (counter, expression) -> String.format("__$synthetic$__%d", counter), String::concat)
                .withEvaluationContextAccessor(evaluationContextProviderFactory);

 ValueExpressionQueryRewriter.QueryExpressionEvaluator evaluator = rewriter.parse(query, queryMethod.getParameters());

 evaluator.evaluate(objects).forEach(parameterMap::addValue);
 
導入:
3.3
作成者:
Jens Schauder, Gerrit Meier, Mark Paluch
関連事項: