Để giải quyết vấn đề này, để có được thực thể được cấu tạo bởi các thuộc tính thực thể khác, bạn có thể tạo nó trong truy vấn, cung cấp hàm tạo cho nó.
Truy vấn:
TypedQuery<Media> query = em.createQuery("SELECT NEW package_name.Media(m.title, b.isbn, b.authors)"
+ " FROM Book b, Media m"
+ " WHERE b.isbn = :isbn"
+ " OR lower(m.title) LIKE :title"
+ " OR b.authors LIKE :authors", Media.class);
Thực thể:
public Media(String title, int isbn, String author){
//-- Setting appropriate values
}
Tôi đã cung cấp mẫu, thay đổi kiểu dữ liệu của hàm tạo cho phù hợp.