تعريف Memento: Memento هو كائن يحفظ نسخة من الحالة الداخلية لكائن آخر ، بحيث يمكن استعادة الكائن إلى حالته المحفوظة الأصلية في المستقبل.
من السهل فهم وضع Memento نسبيًا ، دعونا نلقي نظرة على الكود التالي:
نسخة الكود كما يلي:
منشئ الطبقة العامة {
رقم int الخاص ؛
ملف الملف الخاص = فارغ ؛
المنشئ العام () {}
// إنشاء تذكار
Memento GetMemento () {
إرجاع Memento الجديد (هذا) ؛
}
// استعادة إلى القيمة الأصلية public void setMemento (Memento M) {
الرقم = M.Number ؛
ملف = m.file ؛
}
}
لنلقي نظرة على فئة Memento:
نسخة الكود كما يلي:
تذاكر الفئة الخاصة تنفذ java.io.serializable {
رقم int الخاص ؛
ملف الملف الخاص = فارغ ؛
Memento العام (المنشئ O) {
الرقم = O.Number ؛
ملف = o.file ؛
}
}
يمكن ملاحظة أن قيم العدد والملف في المنشئ يتم حفظها في Memento. إذا تم تغيير الرقم وقيم الملفات في المنشئ ، فيمكن استعادته عن طريق استدعاء طريقة setMemento ().
عيب وضع Memento هو أنه يستهلك الكثير.
تطبيق وضع Memento في JSP+Javabean
في تطبيقات JSP ، عادة ما يكون لدينا العديد من النماذج التي تتطلب من المستخدمين الدخول ، مثل تسجيل المستخدم ، ونحتاج إلى إدخال اسمهم والبريد الإلكتروني. يضغط المستخدم على "إرسال" إذا قمت بالتحقق ، ستجد أن هناك بالفعل عناصر لم يتم ملؤها. سيتم عرض تحذير أو خطأ في النص الأحمر أسفل العنصر. يتم أيضًا عرض المستخدم للتو.
في الشكل أدناه ، تم إدخال الاسم الأول من قبل المستخدم ، ولم يتم إدخال الاسم الأخير ، وسوف نطرح تحذيرًا أحمر:
يتمثل تطبيق هذه التكنولوجيا في استخدام Scope = "request" أو Scope = "Session" خصائص Javabean ، أي وضع Memento.