一尘不染

Spring Data JPA中save和saveAndFlush之间的区别

spring

我试图通过测试一些CRUD操作来学习spring数据JPA JpaRepository

我碰到两个方法savesaveAndFlush。我看不出两者之间的区别。在调用时,save我的更改也将保存到数据库中,所以的用途是什么saveAndFlush


阅读 1929

收藏
2020-04-19

共1个答案

一尘不染

在上saveAndFlush,此命令中的更改将立即刷新到DB。有了save,这未必是真实的,并且可能仅仅停留在内存中,直到flush或者commit发出命令。

但是请注意,即使你刷新了事务中的更改并且不提交它们,这些更改对于外部事务仍然是不可见的,直到对该事务中的提交为止。

在你的情况下,你可能使用某种事务处理机制,commit如果一切正常,它将为你发出命令。

2020-04-19