Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความแตกต่างระหว่าง Save และ SaveAndFlush ใน Spring Java


บันทึกและ saveAndFlush สามารถใช้สำหรับการบันทึกเอนทิตี ทั้งคู่เป็นของไลบรารีข้อมูล Spring บันทึกอาจหรือไม่อาจเขียนการเปลี่ยนแปลงของคุณไปยังฐานข้อมูลทันที เมื่อเราเรียกระบบ saveAndFlush กำลังบังคับให้ซิงโครไนซ์สถานะโมเดลของคุณกับฐานข้อมูล

ซีเนียร์ เลขที่ คีย์ บันทึก SaveAndFlush
1
ที่เก็บ
มันเป็นของ CrudRepository
เป็นของ JPARepository
2
กลยุทธ์การล้างข้อมูล
จะไม่ล้างข้อมูลโดยตรงไปยังฐานข้อมูลจนกว่าเราจะเรียกวิธีการล้างและคอมมิตอย่างชัดเจน
มันล้างข้อมูลโดยตรงไปยังฐานข้อมูล
3
บันทึกเป็นกลุ่ม
CrudRepository มีวิธีการบันทึกจำนวนมาก
วิธี saveAndFlush ไม่รองรับการทำงานจำนวนมาก
4
การแสดงข้อมูลหลังจากบันทึก
จะไม่ล้างข้อมูลโดยตรงไปยังฐานข้อมูล ดังนั้น การเปลี่ยนแปลงจะไม่ปรากฏให้เห็นภายนอกธุรกรรม เว้นแต่เราจะเรียก commit() ในธุรกรรมนี้อย่างชัดเจน
การเปลี่ยนแปลงจะปรากฏนอกธุรกรรมด้วย
5
ใช้ตัวพิมพ์
เราใช้วิธีนี้เมื่อเราไม่จำเป็นต้องใช้การเปลี่ยนแปลงที่บันทึกไว้ในภายหลังในธุรกรรมเดียวกัน
เราใช้วิธีนี้เมื่อเราต้องการใช้การเปลี่ยนแปลงที่บันทึกไว้ในภายหลังในธุรกรรมเดียวกัน