解析多部分文件(CSV)并写入DB的最佳方法



我有一个从HTTP请求接收的多部分文件。我需要读取这个文件,验证数据并将其写入数据库。

文件看起来像

aaaa@aaa.ru;Bogdan

文件包含500k行。我无法将文件保存到内存中,甚至不是临时文件。我只能处理来自HTTP请求的输入流或多部分文件。

我认为我需要使用多线程或可能是春季批处理,否则在写入数据库之前,我需要验证电子邮件,并获得一些数组列表的坏邮件。

你能帮我吗?最好的方法是什么?

p。Spring Batch需要文件,但是我不能将它存储在内存中。

@Bean
public FlatFileItemReader<Person> personItemReader() {
FlatFileItemReader<Person> reader = new FlatFileItemReader<>();
reader.setLinesToSkip(1);
reader.setResource(new ClassPathResource("/data/person.csv"));

我不能将文件保存到内存中,甚至不能保存临时文件-只能处理来自Http请求的输入流或多部分文件

FlatFileItemReader适用于任何org.springframework.core.io.Resource实现。因此,在您的情况下,您可以使用org.springframework.core.io.InputStreamResource的实例与InputStream的Multipart文件。

最新更新