Yanıtlar:
On saveAndFlush, değişiklikler bu komutta derhal DB'ye aktarılacaktır. İle save, bu kadar zaman doğru olmayabilir ve bellekte sadece kalmak olabilir flushya dacommit komutlar verilir.
Ama işlem değişiklikleri temizlemek ve onları taahhüt olmasa bile, değişiklikler yine bilin olmayacak bu işlemde taahhüt kadar dışarıda işlemlere görülebilir.
Sizin durumunuzda, muhtemelen commither şey yolunda giderse sizin için komut veren bir tür işlem mekanizması kullanıyorsunuzdur .
Kullandığınız hazırda bekletme temizleme moduna bağlı olarak ( AUTOvarsayılandır) savedeğişikliklerinizi hemen DB'ye yazabilir veya yazmayabilir. Aradığınızda saveAndFlush, model durumunuzun DB ile senkronizasyonunu zorlarsınız.
AUTO temizleme modunu kullanırsanız ve uygulamanızı önce verileri kaydetmek ve ardından tekrar seçmek için kullanıyorsanız, arasında bahvior'da bir fark görmezsiniz save()ve saveAndFlush()select önce bir sifonu tetikler. Belgelere bakın .
savebir varlık ve yine aynıysam save, ikinci komutla, örneğin çoğaltma için bir istisna atmayacağını mı kastediyorsunuz ?
saveidempotent olduğu anlaşılıyor . Daha fazla ayrıntı için bu ileti dizisine bakın.