用Hibernate和Spring在Java Stream中处理数据库中的实体好吗?

5us2dqdw  于 2023-10-23  发布在  Spring
关注(0)|答案(1)|浏览(109)

例如,我想使用Spring Data JPA从数据库中获取实体集合,修改它们并在数据库中更新:

repository.findAll().stream.map(e -> ...).forEach(e -> repository.save(e));

或者我想创建新的实体并使用Stream API等将它们保存到DB中.
最好的甜点是什么?Stream API与数据库连接会导致问题吗?

ktca8awb

ktca8awb1#

在我看来,你应该避免对数据库进行这种操作,因为这是一种反模式:使用findAll()获取所有数据,并在此之后开始处理,例如,当您可以使用数据库SQL UPDATE Statement进行处理时,或者可以找到其他方法
要了解为什么它是反模式的更多详细信息,请阅读spring-data-findall-anti-pattern

相关问题