我试图通过测试一些CRUD操作来学习spring数据JPA JpaRepository。
JpaRepository
我碰到两个方法save和saveAndFlush。我看不出两者之间的区别。在调用时,save我的更改也将保存到数据库中,所以的用途是什么saveAndFlush。
save
saveAndFlush
在上saveAndFlush,此命令中的更改将立即刷新到DB。有了save,这未必是真实的,并且可能仅仅停留在内存中,直到flush或者commit发出命令。
flush
commit
但是请注意,即使你刷新了事务中的更改并且不提交它们,这些更改对于外部事务仍然是不可见的,直到对该事务中的提交为止。
在你的情况下,你可能使用某种事务处理机制,commit如果一切正常,它将为你发出命令。