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)]
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
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;
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="college", fetch=FetchType.EAGER)
private List<Student> students; // Annotation is now placed above the field
// Other getters and setters omitted
}
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!