繁体   English   中英

在ItemReader中访问作业参数(使用grails的spring-batch)

[英]Access job parameter in ItemReader (spring-batch using grails)

我正在从我的服务和代码看起来像找到一份工作

def jobParameters = new JobParametersBuilder()
                .addDate('toDate',toDate)
                .addDate('fromDate',fromDate)
def jobEx = jobLauncher.run(billProcessJob,jobParameters.toJobParameters())

它正在成功执行。 但是我需要在项目阅读器中访问上面的作业参数。 我的项目阅读器看起来像

class MyDomainMapper implements FieldSetMapper {
def mapLine(FieldSet fs) {
    if(!fs) {
         return null
    }
log.debug('Record:'+fs);//Printing the file record successfully

//Here I need to access my job parameter to map with some domain
}
}

任何人都可以告诉我如何实现它吗? 谢谢

您可以在spring-batch上下文中定义bean:

<bean id="executionContext" class="com.xxx.ExecutionContextImpl" scope="step" >
    <property name="toDate" value="#{jobParameters['toDate']}"  />
    <property name="fromDate" value="#{jobParameters['fromDate']}"  />
</bean>

然后在您的ItemReader中注入executionContext以访问您的作业参数变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM