パッケージ jakarta.interceptor
アノテーション型 InterceptorBinding
@TargetSE(ANNOTATION_TYPESE) @RetentionSE(RUNTIMESE) @DocumentedSE public @interface InterceptorBinding
アノテーション型がインターセプターバインディング型であることを指定します。@Inherited @InterceptorBinding @Target({ TYPE, METHOD, CONSTRUCTOR }) @Retention(RUNTIME) public @interface Valid { }
インターセプターバインディングは、インターセプターをターゲット Bean に関連付けるために使用できる中間アノテーションです。
インターセプターのインターセプターバインディングは、バインディング型と
Interceptor
アノテーションでインターセプタークラスにアノテーションを付けることによって指定されます。@Valid @Interceptor public class ValidationInterceptor { ... }
インターセプターは、複数のインターセプターバインディングを指定できます。
Bean のインターセプターバインディングは、Bean クラス、Bean クラスのメソッド、Bean クラスのコンストラクターにインターセプターバインディング型のアノテーションを付けることで宣言できます。
@Valid public class Order { ... }
@Valid @Secure public void updateOrder(Order order) { ... }
@Valid public Order(...) { ... }
Bean クラスまたは Bean クラスのメソッドは、複数のインターセプターバインディングを宣言できます。
インターセプターバインディング型は、他のインターセプターバインディングを宣言できます。
@Inherited @InterceptorBinding @Target({ TYPE, METHOD }) @Retention(RUNTIME) @Valid public @interface Secure { }
インターセプターバインディングは推移的です。インターセプターバインディング型によって宣言されたインターセプターバインディングは、そのインターセプターバインディング型を宣言するすべての Bean および他のインターセプターバインディング型によって継承されます。
- 導入:
- Jakarta Interceptors 1.1
- 関連事項:
Interceptor