Rumah > Java > javaTutorial > \'Hibernate One-To-Many Ralat Pemetaan: \\\'Tidak Dapat Menentukan Jenis untuk: java.util.List\\\' - Mengapa dan Bagaimana untuk Membetulkannya?\'

\'Hibernate One-To-Many Ralat Pemetaan: \\\'Tidak Dapat Menentukan Jenis untuk: java.util.List\\\' - Mengapa dan Bagaimana untuk Membetulkannya?\'

Linda Hamilton
Lepaskan: 2024-10-28 17:56:29
asal
303 orang telah melayarinya

Hibernate One-To-Many Ralat Pemetaan: "Tidak Dapat Menentukan Jenis untuk: java.util.List"

Dalam Hibernate, pengendalian Perhubungan One-To-Many memerlukan konfigurasi pemetaan yang teliti. Ralat ini biasanya berlaku apabila anotasi pemetaan diletakkan atau dikonfigurasikan secara salah.

Menganalisis kod yang disediakan, kami menghadapi ralat di bawah:

org.hibernate.MappingException: Could not determine type for: java.util.List, at table: College, for columns: [org.hibernate.mapping.Column(students)]
Salin selepas log masuk

Ralat ini menunjukkan bahawa Hibernate tidak dapat menentukan jenis harta pelajar dalam kelas Kolej. Mengikut pemetaan yang disediakan, harta pelajar diberi anotasi dengan @OneToMany dan jenis List, tetapi anotasi diletakkan dengan tidak betul.

Penempatan Anotasi Betul

Dalam strategi akses medan, yang ditentukan oleh anotasi @Id, anotasi JPA hendaklah diletakkan betul-betul di atas setiap medan dan bukannya sifat pengambil. Dalam kes ini, peletakan anotasi yang betul untuk harta pelajar ialah:

@OneToMany(targetEntity=Student.class, mappedBy="college", fetch=FetchType.EAGER)
private List<Student> students;
Salin selepas log masuk

Kelas Kolej Diubahsuai

Dengan peletakan anotasi diperbetulkan, kelas Kolej yang diubah suai kelihatan seperti ini:

@Entity
public class College {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private int collegeId;
private String collegeName;

@OneToMany(targetEntity=Student.class, mappedBy=&quot;college&quot;, fetch=FetchType.EAGER)
private List&lt;Student&gt; students; // Annotation is now placed above the field

// Other getters and setters omitted
}
Salin selepas log masuk

Kesimpulan

Dengan meletakkan anotasi @OneToMany dengan betul di atas medan pelajar, Hibernate kini boleh menentukan jenis harta dan memetakan One dengan betul -Kepada-Many hubungan antara Kolej dan Pelajar. Pelarasan ini menyelesaikan ralat "Tidak dapat menentukan jenis untuk: java.util.List".

Atas ialah kandungan terperinci \'Hibernate One-To-Many Ralat Pemetaan: \\\'Tidak Dapat Menentukan Jenis untuk: java.util.List\\\' - Mengapa dan Bagaimana untuk Membetulkannya?\'. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan