TAILIEUCHUNG - Patterns in JavaTM, Volume 3 Java Enterprise Java Enterprise Design Patterns phần 2

ban đầu của đối tượng trong một cách mà nó có thể dễ dàng được phục hồi. Các mô hình Snapshot (được thảo luận trong các mẫu trong Java, Volume 1) cung cấp hướng dẫn cho chiến lược này. Hình là một sơ đồ lớp cho thấy điều này cách tiếp cận chung. | 42 Chapter Four FIGURE Saving state for future recovery. The simplest way to be able to restore an object s state after a failed transaction is to save the object s initial state in a way that it can easily be restored. The Snapshot pattern discussed in Patterns in Java Volume 1 provides guidance for this strategy. Figure is a class diagram that shows this general approach. An object in the role of transaction manager manipulates instances of other classes that participate in a transaction. Before doing something that will change the state of an object that it manipulates the transaction manager will use an instance of another class to save the initial state of the object. If the transaction manager s commit method is called to signal the successful completion of a transaction then the objects that encapsulate the saved states are discarded. However if the transaction manager detects a transaction failure either from a call to its abort method or from the abnormal termination of the transaction logic then it restores the objects that participate to their initial state. If it is not necessary to save an object s state beyond the end of the current program execution a simple way to save the object s state is to clone it. You can make a shallow copy of an object by calling its clone method. A shallow copy of an object is another object whose instance variables have the same values as the original object. It refers to the same objects as the original object. The other objects that it refers to are not copied. Transaction Patterns 43 All classes inherit a clone method from the Object class. The clone method returns a shallow copy of an object if its class gives permission for its instances to be cloned by implementing the Cloneable interface. The Cloneable interface is a marker interface see the Marker Interface pattern in Volume 1 . It does not declare any methods or variables. Its only purpose is to indicate that a class s instances may be cloned. In order to

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.