アノテーションインターフェース EnableBatchIntegration
@TargetSE(TYPESE)
@RetentionSE(RUNTIMESE)
@DocumentedSE
@EnableIntegration
@Import(BatchIntegrationConfiguration.class)
public @interface EnableBatchIntegration
Spring Batch Integration 機能を有効にし、リモートチャンク化またはインフラストラクチャ Bean のパーティション化をセットアップするための基本構成を提供します。このアノテーションを
Configuration
クラスに追加することにより、次の Bean をオートワイヤーすることが可能になります。RemoteChunkingManagerStepBuilderFactory
: ジョブリポジトリとトランザクションマネージャーを自動的に設定することにより、リモートチャンク設定のマネージャーステップを作成するために使用されます。RemoteChunkingWorkerBuilder
: リモートチャンク設定のワーカー側で統合フローを作成するために使用されます。RemotePartitioningManagerStepBuilderFactory
: ジョブリポジトリ、ジョブエクスプローラー、Bean ファクトリ、トランザクションマネージャーを自動的に設定することにより、リモートパーティショニングセットアップのマネージャーステップを作成するために使用されます。RemotePartitioningWorkerStepBuilderFactory
: ジョブリポジトリ、ジョブエクスプローラー、Bean ファクトリ、トランザクションマネージャーを自動的に設定することにより、リモートパーティショニングセットアップのワーカーステップを作成するために使用されます。
@Configuration @EnableBatchIntegration @EnableBatchProcessing public class RemoteChunkingAppConfig { @Autowired private RemoteChunkingManagerStepBuilderFactory managerStepBuilderFactory; @Autowired private RemoteChunkingWorkerBuilder workerBuilder; @Bean public TaskletStep managerStep() { return this.managerStepBuilderFactory .get("managerStep") .chunk(100) .reader(itemReader()) .outputChannel(outgoingRequestsToWorkers()) .inputChannel(incomingRepliesFromWorkers()) .build(); } @Bean public IntegrationFlow worker() { return this.workerBuilder .itemProcessor(itemProcessor()) .itemWriter(itemWriter()) .inputChannel(incomingRequestsFromManager()) .outputChannel(outgoingRepliesToManager()) .build(); } // Middleware beans omitted }リモートパーティショニングの場合、構成クラスの例は次のようになります。
@Configuration @EnableBatchIntegration @EnableBatchProcessing public class RemotePartitioningAppConfig { @Autowired private RemotePartitioningManagerStepBuilderFactory managerStepBuilderFactory; @Autowired private RemotePartitioningWorkerStepBuilderFactory workerStepBuilderFactory; @Bean public Step managerStep() { return this.managerStepBuilderFactory .get("managerStep") .partitioner("workerStep", partitioner()) .gridSize(10) .outputChannel(outgoingRequestsToWorkers()) .inputChannel(incomingRepliesFromWorkers()) .build(); } @Bean public Step workerStep() { return this.workerStepBuilderFactory .get("workerStep") .inputChannel(incomingRequestsFromManager()) .outputChannel(outgoingRepliesToManager()) .chunk(100) .reader(itemReader()) .processor(itemProcessor()) .writer(itemWriter()) .build(); } // Middleware beans omitted }
- 導入:
- 4.1
- 作成者:
- Mahmoud Ben Hassine, Taeik Lim