คำจำกัดความของ Memento: Memento เป็นวัตถุที่บันทึกสำเนาของสถานะภายในของวัตถุอื่นเพื่อให้วัตถุสามารถกู้คืนไปยังสถานะเดิมที่บันทึกไว้ในอนาคต
Memento Mode ค่อนข้างเข้าใจง่ายลองดูที่รหัสต่อไปนี้:
การคัดลอกรหัสมีดังนี้:
ผู้สร้างชั้นเรียนสาธารณะ {
หมายเลข int ส่วนตัว;
ไฟล์ไฟล์ส่วนตัว = null;
ผู้สร้างสาธารณะ () {}
// สร้างของที่ระลึก
Public Memento GetMemento () {
คืนของ Memento ใหม่ (นี่);
-
// คืนค่าเป็นโมฆะค่าสาธารณะค่าดั้งเดิม setMemento (Memento M) {
number = m.number;
ไฟล์ = m.file;
-
-
มาดูคลาส Memento:
การคัดลอกรหัสมีดังนี้:
Private Class Memento ใช้ java.io.serializable {
หมายเลข int ส่วนตัว;
ไฟล์ไฟล์ส่วนตัว = null;
ของที่ระลึกสาธารณะ (ผู้ริเริ่ม o) {
number = o.number;
ไฟล์ = o.file;
-
-
จะเห็นได้ว่าค่าของจำนวนและไฟล์ในผู้ริเริ่มจะถูกบันทึกไว้ใน Memento หากหมายเลขและค่าไฟล์ในผู้ริเริ่มมีการเปลี่ยนแปลงสามารถกู้คืนได้โดยเรียกใช้เมธอด setMemento ()
ข้อเสียของโหมด Memento คือการบริโภคมาก
แอปพลิเคชันของ Memento Mode ใน JSP+Javabean
ในแอปพลิเคชัน JSP เรามักจะมีหลายรูปแบบที่ต้องการให้ผู้ใช้เข้าร่วมเช่นการลงทะเบียนผู้ใช้และจำเป็นต้องป้อนชื่อและอีเมลของพวกเขา ผู้ใช้กด "ส่ง" หากคุณตรวจสอบคุณจะพบว่ามีรายการที่ไม่ได้กรอกข้อมูลแน่นอนคำเตือนหรือข้อผิดพลาดจะปรากฏในข้อความสีแดงภายใต้รายการ ผู้ใช้เพิ่งเข้ามาก็จะปรากฏขึ้น
ในรูปด้านล่างชื่อผู้ใช้ถูกป้อนและชื่อสุดท้ายยังไม่ได้รับการป้อนและเราจะแจ้งเตือนสีแดง:
การใช้เทคโนโลยีนี้คือการใช้ขอบเขต = "คำขอ" หรือขอบเขต = "เซสชัน" ของ Javabean นั่นคือโหมด Memento