Spring数据JPA将数据作为Object列表流获取

时间:2016-10-10 16:33:01

标签: java spring spring-data spring-data-jpa java-stream

我有一个Spring Web应用程序,它使用Spring Data JPA与DB进行交互。我有一个包含数百万条记录的表格,我想导出一个包含大量数据的CSV,为此我考虑使用Stream。

@Query(value = "SELECT * FROM table WHERE id=:id", nativeQuery = true)
public Stream<Object[]> getData(@Param("id") long id);

执行查询工作正常,我将数据作为流获取,但是当我尝试处理流时出现问题,我得到ClassCastException,即BigInteger无法转换为Object。 有人可以建议我在哪里误会。

1 个答案:

答案 0 :(得分:0)

你得到了ClassCastException,因为它只获取select查询中的第一个字段,该字段可能是数字类型。 我有同样的问题,并将spring-boot-starter-parent更新为版本1.4.1.RELEASE使其工作。 (spring-data-jpa:1.10.3 .RELEASE hibernate-core:5.0.11.Final)