0

我不确定 FlatFileItemReader 是否有能力在遇到异常时存储最后一行。这样当我重新运行批处理应用程序时,它将能够从最后一行继续。

任何实现以下使用原因的示例都会有所帮助谢谢!

 public static FlatFileItemReader<Employee> reader(String path){
    FlatFileItemReader<Employee> reader = new FlatFileItemReader<Employee>();

    reader.setResource(new ClassPathResource(path));
    reader.setLineMapper(new DefaultLineMapper<Employee>() {
    {
     setLineTokenizer(new DelimitedLineTokenizer() {
     {
       setNames(new String[] {"firstName", "lastName", "emailId"});
     }
   });
   setFieldSetMapper(new BeanWrapperFieldSetMapper<Employee>() {
     {
       setTargetType(Employee.class);
     }
   });
 }
});

return reader;
}}
4

1 回答 1

1

我认为这是一种能力FlatFileItemReader

DefaultLineMapper
Now that the basic interfaces for reading in flat files have been defined, it becomes clear that three basic steps are required:

Read one line from the file.

这意味着如果您在作业中将块大小设置为 1 并且读取器在第 195 行失败,则下次作业选择第 195 块并从第 195 行继续。同样在应用程序启动时,spring 会检查失败的执行并自动重新启动它。一些文档:

重试

可重启性

于 2021-02-08T09:55:52.727 回答