Можно ли обрабатывать Multipart CSV File, загруженный из веб-приложения, с помощью Spring Batch? - PullRequest
0 голосов
/ 12 ноября 2018

Я хочу преобразовать CSV-файл, содержащий данные об учениках, в Список и вставить в базу данных.Я просмотрел много примеров из разных источников, но ни один из них не дает ответа для пакетной обработки CSV-файлов, загруженных из веб-интерфейса с использованием spring batch .Все примеры обрабатывают CSV-файлы, расположенные в папке ресурсов (classpath).Пожалуйста, помогите мне обработать CSV-файлы, загруженные с использованием метода Post, как показано ниже.

@PostMapping("/save")
public ResponseEntity saveStudentDetails(@RequestParam("file") MultipartFile studentCSV) {
   //code to initate batch processing for studentCSV file
}

Заранее спасибо.

1 Ответ

0 голосов
/ 12 ноября 2018

Контроллер

@RequestMapping(method = RequestMethod.POST, value = "/save")
        public ReturnFormat uploadCSV(@RequestParam("files")  MultipartFile file )
        {
            return uploadingService.uploadCSV( file );
        }

Класс обслуживания будет как

    public void uploadCSV (MultipartFile multipartFile)
    {
        ReturnFormat rf = new ReturnFormat();
        SuccessErrorList selist = new SuccessErrorList();
        try
        {
            File file = convertMultiPartToFile( multipartFile );

    }

    private File convertMultiPartToFile( MultipartFile file ) throws IOException
    {
        File convFile = new File( file.getOriginalFilename() );
        FileOutputStream fos = new FileOutputStream( convFile );
        fos.write( file.getBytes() );
        fos.close();
        return convFile;
    }
...