การผสานในโหมดไฮเบอร์เนตคืออะไร?
การผสานในโหมดไฮเบอร์เนตคืออะไร?

วีดีโอ: การผสานในโหมดไฮเบอร์เนตคืออะไร?

วีดีโอ: การผสานในโหมดไฮเบอร์เนตคืออะไร?
วีดีโอ: Hibernate คืออะไร การเปิดใช้งานใน Windows 10 ปิด/เปิดคอมฯ โปรแกรมยังอยู่ครบ 2024, ธันวาคม
Anonim

อย่างที่เราทราบกันดีว่า update() และ ผสาน () วิธีการใน จำศีล ใช้เพื่อแปลงวัตถุที่อยู่ในสถานะแยกออกเป็นสถานะคงอยู่ ผสาน ควรใช้ในกรณีนั้น จะรวมการเปลี่ยนแปลงของวัตถุที่แยกออกมากับวัตถุในเซสชัน หากมี

แล้วอะไรคือความแตกต่างระหว่าง Merge และ saveOrUpdate ในโหมดไฮเบอร์เนต?

หากคุณกำลังใช้ saveOrUpdate จะต้องแนบวัตถุที่บันทึกไว้กับเซสชัน ไฮเบอร์เนต ดูแล การควบรวมกิจการ ข้อมูลให้เหมาะสม จำศีล เซสชันที่แนบมาวัตถุและบันทึกข้อมูล ข้อเสียเพียงอย่างเดียวของการใช้ ผสาน คือวัตถุที่ส่งผ่านไม่ได้สะท้อนถึงข้อมูลที่เปลี่ยนแปลง

ต่อมาคำถามคือ Evict คืออะไรในสถานะจำศีล? ขับไล่ () เพื่อแยกวัตถุออกจากแคชเซสชัน จำศีล จัดเตรียมให้ ขับไล่ () กระบวนการ. หลังจากถอดอ็อบเจ็กต์ออกจากเซสชันแล้ว การเปลี่ยนแปลงใดๆ กับอ็อบเจ็กต์จะไม่คงอยู่ ออบเจ็กต์ที่เกี่ยวข้องจะถูกแยกออกจากกันหากการเชื่อมโยงถูกแมปกับ cascade=" ขับไล่ ".

อีกอย่างที่ควรทราบคือ ไฮเบอร์เนตอัปเดตทำงานอย่างไร

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

การผสาน EntityManager ทำอะไร

NS EntityManager . ผสาน () การดำเนินการใช้เพื่อ ผสาน การเปลี่ยนแปลงที่ทำกับวัตถุที่แยกออกมาในบริบทการคงอยู่ ผสานไม่ ไม่อัปเดตวัตถุลงในฐานข้อมูลโดยตรง แต่จะรวมการเปลี่ยนแปลงเข้ากับบริบทการคงอยู่ (ธุรกรรม)