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