@Scope(value="step",
proxyMode=TARGET_CLASS)
@Retention(value=RUNTIME)
@Documented
public @interface StepScope
プロキシモードをデフォルトにするステップスコープ Bean の便利なアノテーション。これにより、すべての Bean 定義で明示的に指定する必要がなくなります。これは、ステップコンテキストから @Values を注入する必要があるすべての @Bean、およびステップ実行とライフサイクルを共有する必要があるすべての Bean(ItemStream など)で使用します。例:
@Bean @StepScope protected Callable<String> value(@Value("#{stepExecution.stepName}") final String value) { return new SimpleCallable(value); }
@Bean を @StepScope としてマークすることは、@Scope(value="step", proxyMode=TARGET_CLASS)
としてマークすることと同じです。