Tôi có 2 lớp có nhiều mối quan hệ. Tôi lấy 'Câu hỏi' và 'Thẻ' làm ví dụ để làm cho trường hợp dễ hiểu hơn.Hibernate nhiều-nhiều: Tiêu chí để tìm kiếm tất cả các lớp A có chứa lớp B
Đối với mỗi câu hỏi, bạn có một số thẻ. Giống như đối với thẻ.
Điều tôi muốn làm là nhận tất cả các câu hỏi (và các thẻ tương ứng của chúng) nếu câu hỏi chứa thẻ nói "hibernate".
Tôi có thể làm nhiều nhất bằng SQLQuery trong bảng nhiều người và trả về danh sách ID câu hỏi. Sau đó sử dụng một tiêu chí với một limits.in và lấy tất cả các câu hỏi. Nhưng nó quá vụng về và tôi cá là có cách làm tốt hơn, đúng không?
Tôi nên hỏi sớm hơn nhiều! Không thể tin rằng nó thẳng tiến về phía trước. –
Cảm ơn @ lomaxx, tôi có cùng một câu hỏi nhưng với một yêu cầu khác nhỏ: Nếu tôi muốn so sánh "qt" với đối tượng Thẻ thì sao? (không phải qt.name với tag.getName()) – smallufo
@smallufo: ý của bạn là gì? bạn đang nói bạn có một thẻ và bạn muốn so sánh bộ sưu tập qt.Tags với thẻ đó? Trong trường hợp đó, bạn cần phải thực hiện Restrictions.eq ("qt.Tags.Id", tag.Id) – lomaxx