首页 > 解决方案 > Spring Boot通过REST端点将巨大的数据库导出到csv

问题描述

我需要构建一个 Spring Boot 应用程序,它公开一个 REST 端点,以将一个巨大的数据库表导出为具有不同过滤器参数的 CSV 文件。我正在尝试找到解决此问题的有效方法。

目前,我正在使用 spring-data-jpa 查询数据库表,该表返回 POJO 列表。然后使用 Apache Commons CSV 将此列表作为 CSV 文件写入 HttpServletResponse。这种方法有几个问题。首先,它将所有数据加载到内存中。其次,它很慢。

我没有对数据做任何业务逻辑,在这种情况下是否有必要使用 jpa 和实体(POJO)。我觉得这是导致问题的区域。

标签: javaspringspring-bootspring-dataspring-jdbc

解决方案


您可以尝试使用 Spring 5 引入的新 SpringWebflux: https ://www.baeldung.com/spring-webflux


推荐阅读