Spring Batch从Rest控制器读取multipartfile

时间:2020-10-04 02:33:54

标签: spring-boot rest spring-batch

在遵循了不同的教程之后,我来到了这段代码,但是当我运行它时,抛出的异常路径不能为空。

    @Bean
@Scope(value = "step", proxyMode = ScopedProxyMode.TARGET_CLASS)
public FlatFileItemReader<Person> importReader(@Value("#{jobParameters[pathToFileName]}") String pathToFile) {
    FlatFileItemReader<Person> reader = new FlatFileItemReader<>();
    reader.setResource(new FileSystemResource(pathToFile));
    reader.setLineMapper(new DefaultLineMapper<>() {{
        setLineTokenizer(new DelimitedLineTokenizer() {{
            setNames("firstName", "lastName", "email");
        }});
        setFieldSetMapper(new BeanWrapperFieldSetMapper<>() {{
            setTargetType(Person.class);
        }});
    }});
    return reader;
}

其余控制器的代码为

        String path = new ClassPathResource("tmpuploads/").getURL().getPath();
    File fileToImport = new File(path + multipartFile.getOriginalFilename());
    JobExecution jobExecution = jobLauncher.run(importUserJob, new JobParametersBuilder()
            .addString("pathToFileName", fileToImport.getAbsolutePath())
            .toJobParameters());    

0 个答案:

没有答案
相关问题