インターフェース MethodValidator
- すべての既知の実装クラス:
HandlerMethodValidator
,MethodValidationAdapter
public interface MethodValidator
メソッド検証を適用し、結果を処理するための契約。
MethodValidationResult
を返すメソッドと、デフォルトで MethodValidationException
を発生させる結果を処理するメソッドを公開します。- 導入:
- 6.1
- 作成者:
- Rossen Stoyanchev
方法の概要
修飾子と型メソッド説明default void
applyArgumentValidation
(ObjectSE target, MethodSE method, MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) validateArguments(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter[], java.lang.Object[], java.lang.Class<?>[])
に委譲して検証結果を処理します。デフォルトでは、エラーが発生した場合にMethodValidationException
が発生します。default void
applyReturnValueValidation
(ObjectSE target, MethodSE method, MethodParameter returnType, ObjectSE returnValue, ClassSE<?>[] groups) validateReturnValue(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter, java.lang.Object, java.lang.Class<?>[])
に委譲して検証結果を処理します。デフォルトでは、エラーが発生した場合にMethodValidationException
が発生します。ClassSE<?>[]
determineValidationGroups
(ObjectSE target, MethodSE method) 該当する検証グループを決定します。validateArguments
(ObjectSE target, MethodSE method, MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) 指定されたメソッド引数を検証し、検証結果を返します。validateReturnValue
(ObjectSE target, MethodSE method, MethodParameter returnType, ObjectSE returnValue, ClassSE<?>[] groups) 指定された戻り値を検証し、検証結果を返します。
メソッドの詳細
determineValidationGroups
該当する検証グループを決定します。デフォルトでは、メソッドまたはクラスレベルの@Validated
アノテーションから取得されます。- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッド- 戻り値:
Class
配列としての該当する検証グループ
validateArguments
MethodValidationResult validateArguments(ObjectSE target, MethodSE method, @Nullable MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) 指定されたメソッド引数を検証し、検証結果を返します。- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッドparameters
- パラメーター(すでに作成されており利用可能な場合)arguments
- 検証する候補の引数値groups
-determineValidationGroups(java.lang.Object, java.lang.reflect.Method)
の検証グループ- 戻り値:
- 検証の結果
applyArgumentValidation
default void applyArgumentValidation(ObjectSE target, MethodSE method, @Nullable MethodParameter[] parameters, ObjectSE[] arguments, ClassSE<?>[] groups) validateArguments(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter[], java.lang.Object[], java.lang.Class<?>[])
に委譲し、検証結果を処理します。デフォルトでは、エラーの場合はMethodValidationException
が発生します。実装では、メソッドにErrors
を挿入するなど、代替処理を提供する場合があります。- 例外:
MethodValidationException
- 未処理のエラーが発生した場合。
validateReturnValue
MethodValidationResult validateReturnValue(ObjectSE target, MethodSE method, @Nullable MethodParameter returnType, @Nullable ObjectSE returnValue, ClassSE<?>[] groups) 指定された戻り値を検証し、検証結果を返します。- パラメーター:
target
- ターゲットオブジェクトmethod
- ターゲットメソッドreturnType
- 戻りパラメーター (すでに作成されて使用可能な場合)returnValue
- 検証する戻り値groups
-determineValidationGroups(java.lang.Object, java.lang.reflect.Method)
の検証グループ- 戻り値:
- 検証の結果
applyReturnValueValidation
default void applyReturnValueValidation(ObjectSE target, MethodSE method, @Nullable MethodParameter returnType, @Nullable ObjectSE returnValue, ClassSE<?>[] groups) validateReturnValue(java.lang.Object, java.lang.reflect.Method, org.springframework.core.MethodParameter, java.lang.Object, java.lang.Class<?>[])
に委譲して検証結果を処理します。デフォルトでは、エラーが発生した場合にMethodValidationException
が発生します。実装では代替処理が提供される場合があります。- 例外:
MethodValidationException
- 未処理のエラーが発生した場合。