Rumah >pangkalan data >tutorial mysql >Bagaimanakah Hibernate Boleh Mencipta dan Mengemas kini Jadual Pangkalan Data secara Automatik daripada Kelas Entiti?

Bagaimanakah Hibernate Boleh Mencipta dan Mengemas kini Jadual Pangkalan Data secara Automatik daripada Kelas Entiti?

Susan Sarandon
Susan Sarandonasal
2024-12-22 22:05:20829semak imbas

How Can Hibernate Automatically Create and Update Database Tables from Entity Classes?

Mencipta dan Mengemas kini Jadual Pangkalan Data Secara Automatik Menggunakan Kelas Entiti dalam Hibernate

Kelas entiti Java Persistence API (JPA) anda, ServerNode dan kegigihan. konfigurasi xml selesai. Walau bagaimanapun, jika anda ingin mencipta dan/atau mengemas kini jadual pangkalan data secara automatik berdasarkan kelas entiti anda menggunakan Hibernate, terdapat langkah tambahan yang boleh anda ambil:

Dalam persistence.xml anda, pastikan anda telah menetapkan hibernate.hbm2ddl .sifat auto untuk sama ada "buat" atau "buat-jatuhkan":

<property name="hibernate.hbm2ddl.auto" value="create"/>
  • "buat" akan mencipta jadual jika ia tidak wujud.
  • "create-drop" akan mencipta jadual dan menjatuhkannya apabila kilang sesi ditutup.

Dalam kelas entiti anda, pertimbangkan untuk menetapkan javax secara eksplisit. kegigihan. Anotasi jadual:

@Entity
@Table(name = "MyTableName")
public class ServerNode {
  // ...
}

Anotasi ini menentukan nama jadual yang akan dipetakan kepada entiti kelas.

Dengan tetapan ini, Hibernate akan membuat atau mengemas kini jadual pangkalan data "Icarus" secara automatik mengikut definisi kelas entiti apabila kilang sesi dibuat.

Atas ialah kandungan terperinci Bagaimanakah Hibernate Boleh Mencipta dan Mengemas kini Jadual Pangkalan Data secara Automatik daripada Kelas Entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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