我尝试将spring批处理实现到现有环境中。 我的spring批处理工作正常,但似乎没有将实例插入spring批处理表(Batch_job_execution,...)
我不明白它为什么没有失败,批次的雕像完成了?
我如何解决这个问题,并正确配置我的弹簧批处理已有的配置?
我有一个transactionManager配置如下: 项目的常见配置
@Bean
public JpaTransactionManager myTxManager() {
return new JpaTransactionManager(myEmf().getObject());
}
我目前的春季批量配置
@Bean
@Override
public JobRepository getJobRepository() throws Exception {
MapJobRepositoryFactoryBean factory = new MapJobRepositoryFactoryBean(getTransactionManager());
factory.setIsolationLevelForCreate("ISOLATION_DEFAULT");
factory.afterPropertiesSet();
return factory.getObject();
}
@Override
public JobLauncher getJobLauncher() throws Exception {
SimpleJobLauncher jobLauncher = new SimpleJobLauncher();
jobLauncher.setJobRepository(getJobRepository());
jobLauncher.afterPropertiesSet();
return jobLauncher;
}
@Override
public JpaTransactionManager getTransactionManager() throws Exception {
return myTxManager;
}
@Override
public JobExplorer getJobExplorer() throws Exception {
return this.jobExplorer;
}
答案 0 :(得分:1)
MapJobRepositoryFactoryBean
创建一个由内存JobRepository
实现支持的Map
...而不是数据库。改为使用JobRepositoryFactoryBean
,您将看到数据库中的记录。