Chúng tôi có yêu cầu về dự án của chúng tôi, nơi chúng tôi cần duy trì một loại lịch sử thay đổi được thực hiện cho một số thực thể nhất định trong Ứng dụng. Ứng dụng này là một ứng dụng web Java dựa trên Struts, Spring và Hibernate. Cách tiếp cận nào đã được sử dụng trong trường hợp này?Ghi nhật ký Thay đổi thực thể trong Ứng dụng web Java
- Trình kích hoạt trên các bảng tương ứng là một ý tưởng nhưng chúng không dễ bảo trì? và có lẽ họ cũng không nên là một phần của giao dịch (ok của nó nếu kích hoạt thất bại, nhưng các giao dịch cập nhật thực thể không nên thất bại).
- Sử dụng AoP cho điều này vì mối quan tâm chéo của nó, nhưng phải thực sự chi tiết, như chỉ ghi lại các giá trị khi thực thể thay đổi. (Tất cả các chỉnh sửa không có các phương thức khác nhau tương ứng của chúng ... nhiều chỉnh sửa xảy ra trong một Phương thức java đơn).
- Sử dụng Trình nghe sự kiện Hibernate.
Có phương pháp nào khác để thực hiện loại hoạt động này không?
Cảm ơn thông tin Arthur. Để thực hiện đơn giản, tôi đang cố gắng mở rộng Trình nghe sự kiện Hibernate. –
+1, để giải thích mục đích chung. – Bozho
+1 như Bozho đã nói –