Trước hết hãy quên Hibernate. Giả sử rằng tôi có hai bảng, A & B. Hai giao dịch đang cập nhật cùng một bản ghi trong hai bảng này, nhưng txn 1 cập nhật B và sau đó A, trong khi txn 2 cập nhật A thì B. Đây là một ví dụ bế tắc điển hình. Cách phổ biến nhất để tránh điều này là xác định trước thứ tự của các tài nguyên có được. Ví dụ: chúng tôi nên cập nhật bảng A rồi B.Làm thế nào để Hibernate quyết định thứ tự cập nhật/chèn/xóa
Quay lại Hibernate. Khi chúng ta đang cập nhật rất nhiều thực thể trong một phiên, một khi tôi đang xóa phiên, các thay đổi của các thực thể khác nhau sẽ tạo ra các câu lệnh chèn/cập nhật/xóa tương ứng cho DB. Liệu Hibernate có một số thuật toán để quyết định thứ tự cập nhật giữa các thực thể? Nếu không, cách nào Hibernate được sử dụng để ngăn chặn tình trạng bế tắc được mô tả trong đoạn 1?
Nếu Hibernate duy trì thứ tự, làm cách nào tôi có thể biết hoặc kiểm soát thứ tự? Tôi không muốn cập nhật rõ ràng của tôi trong DB xung đột với Hibernate, và gây ra bế tắc.
Xin vui lòng chấp nhận lời xin lỗi của tôi rằng, vì lý do không rõ tôi đã bỏ lỡ câu trả lời này trước :) Tôi tin rằng kết quả kiểm tra của bạn trong mã Hibernate thực sự đưa ra câu trả lời đáng tin cậy nhất cho đến bây giờ. Đề xuất tốt đặc biệt cho điểm 1 và 2 –