JJ *_*kar 8 spring spring-batch spring-el
在Spring Batch的步范围文档中,有三个原因不明的弹簧一批关系网图:jobParameters,jobExecutionContext,和stepExecutionContext.  
Springsource示例代码,合并:
<bean id="flatFileItemReader" scope="step"
  class="org.springframework.batch.item.file.FlatFileItemReader">
    <property name="var1" value="#{jobParameters['input.file.name']}" />
    <property name="var2" value="#{jobExecutionContext['input.file.name']}" />
    <property name="var3" value="#{stepExecutionContext['input.file.name']}" />
</bean>
什么是默认的参数范围内使用jobParameters,jobExecutionContext和stepExecutionContext?
Spring Batch版本1.x与2.x与3.x之间的差异也可能存在差异 - 该领域的文档非常缺乏.
没有任何默认值。可以将jobParameters,jobExecutionContext和stepExecutionContext视为Map具有针对不同原始数据类型(例如)的辅助方法的光荣的getInt()。通常是从StepExecution和JobExecution传递给*ExecutionListeners的对象访问它们,或者使用值注入(例如)进行注入@Value("#{jobParameters['foo']}")。
在这种情况下,input.file.name仅仅是开发人员选择的名称,例如,可能对应于指定给的命令行作业参数CommandLineJobRunner。
#{jobParameters}、#{jobExecutionContext}和#{stepExecutionContext}是 spEL(Spring 表达式语言)对应的JobParameters、JobExecution和StepExecution对象,可在后期绑定中使用,以允许从步骤范围对象非静态访问此对象值。
它们支持 s 访问Map,因此您可以访问与和关联的ExecutionContext以及存储在 中的值。JobExecutionStepExecutionJobParameters
另请查看StepScope文档以获取更多信息。
| 归档时间: | 
 | 
| 查看次数: | 4484 次 | 
| 最近记录: |