Setelah melihat permintaan Anda, saya menyadari beberapa masalah dengan HQL Anda yang perlu ditangani. Lihat bagiannya di sini:
https://docs .jboss.org/hibernate/orm/3.3/reference/en-US/html/queryhql.html#queryhql-joins
Jadi dengan melakukan FETCH ALL PROPERTIES Anda tidak memiliki kemampuan untuk memfilter z anak dalam kueri yang sama. Kueri Anda akan terlihat seperti ini:
SELECT new com.mycompany.kwestionariusz.Osoba(
o.id, o.imie, o.nazwisko, o.telefon, o.email,
o.uczelnia, o.doswiadczenie, o.skadSlyszal)
from Osoba as o
INNER JOIN o.zainteresowania as z
WHERE ((o.id) = (id_osoby))
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
and (LOWER(z.zainteresowanie) LIKE ?)
Satu-satunya hal yang saya tidak yakin adalah properti ini di sini:
(id_osoby)
Saya tidak melihat ini alias di mana pun dan saya tidak melihat kolom ini di tabel Anda mana pun. Apakah Anda yakin ini diperlukan?
Jadi ini sekarang akan memberi Anda o entitas induk yang telah difilter oleh properti dari z anak. Namun, anak-anak z malas jadi Anda harus menanyakannya secara independen dengan ID z atau Anda harus dapat mengambilnya dengan malas dalam transaksi hibernasi yang sama hanya dengan memanggil metode pengambil untuk mengembalikan daftar anak-anak z.