Có ai biết về tính hợp lệ của các phương thức Criteria.list()
và Query.list()
của Hibernate trả về nhiều lần xuất hiện của cùng một thực thể không? Thỉnh thoảng tôi tìm thấy khi sử dụng API tiêu chí, việc thay đổi chiến lược tìm nạp mặc định trong định nghĩa ánh xạ lớp của tôi (từ "select" thành "join") đôi khi có thể ảnh hưởng đến bao nhiêu tham chiếu đến cùng một thực thể của list()
và tôi không chắc liệu có nên coi đây là lỗi hay không. Javadoc không định nghĩa nó, nó chỉ đơn giản nói "Danh sách các kết quả truy vấn phù hợp". (cảm ơn các bạn).Có hợp lệ cho danh sách Hibernate() để trả về các bản sao không?
Nếu điều này được mong đợi và hành vi bình thường, thì tôi có thể tự xóa danh sách, nhưng đó không phải là vấn đề, nhưng nếu đó là lỗi, thì tôi muốn tránh nó hơn là xóa kết quả và thử để bỏ qua nó.
Bất kỳ ai có bất kỳ trải nghiệm nào về điều này?
+1. Làm thế nào tôi có thể không upvote ai đó liên kết đến câu trả lời của tôi? :-) Nghiêm túc, tuy nhiên - có, Hibernate có thể trả về các bản sao khi nhiều hơn một liên kết "nhiều" được khai báo với tìm nạp háo hức hoặc được truy xuất bằng cách sử dụng tìm nạp tham gia trong cùng một truy vấn. Xem ghi chú ở cuối 14.3: http://docs.jboss.org/hibernate/stable/core/reference/en/html/queryhql.html#queryhql-joins – ChssPly76
Cảm ơn liên kết doc, tôi biết rằng để được ở đó một nơi nào đó – skaffman
@ ChssPly76 Liên kết bị hỏng! – Champ