- メッセージの送信と受信: Spring Integrationでは、メッセージングコンポーネントを使用してメッセージを送信および受信します。以下のコード例は、メッセージの送信と受信の基本的な方法を示しています。
// メッセージ送信
MessageChannel channel = new DirectChannel();
Message<String> message = MessageBuilder.withPayload("Hello, Spring Integration!").build();
channel.send(message);
// メッセージ受信
channel.subscribe(message -> {
String payload = (String) message.getPayload();
System.out.println("Received message: " + payload);
});
- メッセージの変換とフィルタリング: Spring Integrationでは、メッセージの変換やフィルタリングを行うことができます。以下のコード例は、メッセージの変換とフィルタリングを行う方法を示しています。
// メッセージ変換
IntegrationFlow flow = IntegrationFlows.from("inputChannel")
.transform(String::toUpperCase)
.channel("outputChannel")
.get();
// メッセージフィルタリング
IntegrationFlow flow = IntegrationFlows.from("inputChannel")
.filter(payload -> payload.length() > 10)
.channel("outputChannel")
.get();
- ルーティングと分割: Spring Integrationでは、メッセージのルーティングや分割を行うことができます。以下のコード例は、メッセージのルーティングと分割を行う方法を示しています。
// メッセージルーティング
IntegrationFlow flow = IntegrationFlows.from("inputChannel")
.route("header['type']", mapping -> mapping
.subFlowMapping("A", sf -> sf.handle("serviceA"))
.subFlowMapping("B", sf -> sf.handle("serviceB")))
.get();
// メッセージ分割
IntegrationFlow flow = IntegrationFlows.from("inputChannel")
.split()
.channel("outputChannel")
.get();
これらはSpring Integrationの基本的な機能の一部です。さらに高度なトピックや他のインテグレーションパターンについては、公式ドキュメントやチュートリアルを参照してください。