アノテーションインターフェース MessageMapping
@TargetSE({TYPESE,METHODSE})
@RetentionSE(RUNTIMESE)
@DocumentedSE
@Reflective(MessageMappingReflectiveProcessor.class)
public @interface MessageMapping
 宣言された 
patterns をメッセージから抽出された宛先に一致させることにより、Message をメッセージ処理メソッドにマッピングするためのアノテーション。アノテーションは、すべてのクラスメソッドでパターンプレフィックスを宣言する方法として、型レベルでもサポートされています。@MessageMapping メソッドは、次の引数をサポートしています。
- @Payloadメソッド引数。メッセージのペイロードを抽出し、宣言されたターゲット型にデシリアライズします。- @Payload引数には、- @Validatedなどの検証アノテーションが付けられ、JSR-303 検証が適用されます。アノテーションは、他の方法では処理されない引数に対してデフォルトで想定されるため、存在する必要はありません。
-  メッセージ宛先から抽出されたテンプレート変数値にアクセスするための @DestinationVariableメソッド引数。/hotels/{hotel}必要に応じて、変数値を String から宣言されたメソッド引数型に変換することもできます。
-  特定のメッセージヘッダー値を抽出し、Converterを適用して、値を宣言されたターゲット型に変換する@Headerメソッド引数。
-  すべてのヘッダーへのアクセスのために MapSE にも割り当て可能な@Headersメソッド引数。
-  すべてのヘッダーにアクセスするための MessageHeadersメソッド引数。
-  すべてのヘッダーにアクセスするための MessageHeaderAccessorメソッド引数。STOMP over WebSocket のような一部の処理シナリオでは、これはSimpMessageHeaderAccessorなどの特殊化である場合もあります。
-  宣言された型に一致するために必要に応じてボディが逆直列化されたボディおよびヘッダーへのアクセスのための Message<T>。
- PrincipalSE メソッド引数は、WebSocket を介した STOMP などの一部の処理シナリオでサポートされています。認証されたユーザーを反映します。
戻り値の処理は、処理シナリオによって異なります。
- STOMP over WebSocket- 値はメッセージに変換され、デフォルトのレスポンス宛先または @SendToまたは@SendToUserアノテーションで指定されたカスタム宛先に送信されます。
- RSocket- レスポンスは、ストリームリクエストにレスポンスするために使用されます。
 このアノテーションの専門分野には、@SubscribeMapping(例: STOMP サブスクリプション)および @ConnectMapping(例: RSocket 接続)が含まれます。どちらもプライマリマッピングをさらに絞り込み、メッセージ型と照合します。両方を、共通のパターンプレフィックスを宣言する型レベルの @MessageMapping と組み合わせることができます。
さまざまなコンテキストでのこのアノテーションの使用の詳細については、Spring Framework リファレンスの以下のセクションを参照してください。
- WebSocket 「アノテーション付きコントローラー」を介した STOMP。
- RSocket 「アノテーション付き応答者」
 注  : コントローラーインターフェース(AOP プロキシなど)を使用する場合、@MessageMapping や @SubscribeMapping などのすべてのマッピングアノテーションを、実装クラスではなくコントローラーインターフェースに一貫して配置するようにしてください。
- 導入:
- 4.0
- 作成者:
- Rossen Stoyanchev
- 関連事項:
- オプション要素の概要オプション要素
- 要素の詳細- valueStringSE[] valueこのアノテーションによって表される宛先ベースのマッピング。- STOMP over WebSocket メッセージの場合、これは - AntPathMatcher-style パターンがメッセージの STOMP 宛先と照合されます。- RSocket の場合、これは - AntPathMatcherまたは- PathPatternベースのパターンであり、設定に応じて、ストリームリクエストのルートに一致します。- パターンが設定されていない場合、マッピングはすべての宛先に一致します。 - デフォルト:
- {}