public interface EvaluationContext
このインターフェースには 2 つのデフォルト実装があります。
SimpleEvaluationContext
: 必要に応じて複数の SpEL 機能を選択できる、データバインディング用のよりシンプルなビルダースタイルの EvaluationContext
バリアント。StandardEvaluationContext
: すべてを手動で実装するのではなく、拡張可能な、強力で高度に構成可能な EvaluationContext
実装。修飾子と型 | メソッドと説明 |
---|---|
default TypedValue | assignVariable(StringSE name, SupplierSE<TypedValue> valueSupplier) 指定された Supplier SE によって作成された値を、この評価コンテキスト内の名前付き変数に割り当てます。 |
BeanResolver | getBeanResolver() 名前で Bean を検索できる Bean リゾルバーを返します。 |
ListSE<ConstructorResolver> | getConstructorResolvers() コンストラクターを見つけるために順番に尋ねられるリゾルバーのリストを返します。 |
ListSE<MethodResolver> | getMethodResolvers() メソッドを見つけるために順番に要求されるリゾルバーのリストを返します。 |
OperatorOverloader | getOperatorOverloader() 標準の型のセット以外のものの間の数学演算をサポートする可能性のある演算子オーバーローダーを返します。 |
ListSE<PropertyAccessor> | getPropertyAccessors() プロパティの読み取り / 書き込みを順番に要求されるアクセサーのリストを返します。 |
TypedValue | getRootObject() 修飾されていないプロパティ / メソッド / その他を解決する必要があるデフォルトのルートコンテキストオブジェクトを返します。 |
TypeComparator | getTypeComparator() オブジェクトのペアが等しいかどうかを比較するための型コンパレータを返します。 |
TypeConverter | getTypeConverter() 値をある型から別の型に変換(または強制)できる型コンバーターを返します。 |
TypeLocator | getTypeLocator() 短い名前または完全修飾名で型を検索するために使用できる型ロケーターを返します。 |
ObjectSE | lookupVariable(StringSE name) この評価コンテキスト内の名前付き変数を検索します。 |
void | setVariable(StringSE name, ObjectSE value) この評価コンテキストの名前付き変数を指定された値に設定します。 |
TypedValue getRootObject()
ListSE<PropertyAccessor> getPropertyAccessors()
ListSE<ConstructorResolver> getConstructorResolvers()
ListSE<MethodResolver> getMethodResolvers()
@Nullable BeanResolver getBeanResolver()
TypeLocator getTypeLocator()
TypeConverter getTypeConverter()
TypeComparator getTypeComparator()
OperatorOverloader getOperatorOverloader()
default TypedValue assignVariable(StringSE name, SupplierSE<TypedValue> valueSupplier)
Supplier
SE によって作成された値を、この評価コンテキスト内の名前付き変数に割り当てます。setVariable(String, Object)
とは対照的に、このメソッドは、式内で代入演算子 (=
) をサポートするためにのみ呼び出す必要があります。
デフォルトでは、このメソッドは setVariable(String, Object)
に委譲し、valueSupplier
によって作成された値を提供します。具体的な実装は、このデフォルトのメソッドをオーバーライドして、異なるセマンティクスを提供する場合があります。
name
- 割り当てる変数の名前 valueSupplier
- 変数に割り当てられる値のサプライヤー TypedValue
void setVariable(StringSE name, @Nullable ObjectSE value)
assignVariable(String, Supplier)
とは対照的に、このメソッドは、EvaluationContext
と直接対話する場合にのみプログラムで呼び出す必要があります。— たとえば、コンテキストの初期構成を提供します。
name
- 設定する変数の名前 value
- 変数に入れられる値