2つのステップを持つSpringバッチジョブを作成しようとしています。両方とも同じステップですが、ファイルの場所が異なります。そのため、異なるファイルをどこに送るかをステップに伝えるために、複数の文字列をジョブBeanに渡す必要があります。しかし、私は、リソースの値を渡そうとすると、私はNoSuchBeanDefinitionExceptionを取得します。私が見つけた答えは、Beanに@Valueを追加してBeanが動作するためのパラメータが必要であることを伝える必要があるということです。 しかし、これは1つの値にすぎません。Javaクラスの@Beanに複数の@Valueを渡す
Java設定を使用して複数の@ValuesをBeanに渡す方法はありますか?以下は私が使用しているコードです。
@Value("#{'${batch.outputFile}'}")
Resource outputFilePath;
@Value("#{'${batch.outputFileTrg}'}")
Resource outputFilePathTrg;
@Bean
public Step toServerStep(Resource outputFile) {
return stepBuilderFactory.get("toServerStep")
.chunk(1)
.reader(xmlFileItemReader())
.writer((ItemWriter<? super Object>) flatFileItemWriter(outputFile))
.build();
}
@Bean
public Job fileToServerJob(JobBuilderFactory jobBuilderFactory){
return jobBuilderFactory.get("fileToServerJob")
.start(toServerStep(outputFilePath1))
.next(toServerStep(outputFilePath2))
.build();
}
プロパティファイルから、リソースを取得できません。あなたはいくつかのURLやデータを取得することができます例Integerなど – Mikhail