Rumah >Java >javaTutorial >Bagaimanakah saya boleh menentukan entiti dalam persistence.xml untuk JPA?

Bagaimanakah saya boleh menentukan entiti dalam persistence.xml untuk JPA?

DDD
DDDasal
2024-11-28 08:02:10519semak imbas

How can I define entities in persistence.xml for JPA?

Entiti dalam kegigihan.xml

Dalam Java Persistence API (JPA), fail persistence.xml memberitahu penyedia kegigihan tentang unit kegigihan dalam aplikasi dan berfungsi sebagai fail konfigurasi. Salah satu fungsinya ialah untuk menentukan entiti yang akan diuruskan oleh unit kegigihan.

Pengimbasan Entiti Automatik

JPQL mengimbas secara automatik untuk entiti dalam pakej Java dengan kelas dinyatakan dalam unsur kegigihan.xml. Walau bagaimanapun, pendekatan ini tidak wajib dan mekanisme lain boleh digunakan untuk mentakrifkan entiti.

Menggunakan Elemen jar-file

Daripada menyenaraikan entiti secara manual, anda boleh menggunakan elemen jar-file untuk menentukan satu atau lebih fail JAR yang mengandungi kelas entiti. Pembekal kegigihan akan mengimbas fail JAR ini untuk kelas yang diberi penjelasan dengan @Entity.

<persistence>
    <persistence-unit name="eventractor" transaction-type="RESOURCE_LOCAL">
        <jar-file>MyOrderApp.jar</jar-file>
        <properties>
            <property name="hibernate.hbm2ddl.auto" value="validate" />
            <property name="hibernate.show_sql" value="true" />
        </properties>
    </persistence-unit>
</persistence>

Pengesanan Auto Hibernate

Hibernate secara khusus menyokong pengesanan automatik entiti walaupun dalam Aplikasi Java SE. Untuk mendayakan ini, tambahkan sifat hibernate.archive.autodetection pada persistence.xml:

<persistence>
    <persistence-unit name="eventractor" transaction-type="RESOURCE_LOCAL">
        <!-- Hibernate auto-detection is spec compliant in Java EE only. -->
        <properties>
            <property name="hibernate.archive.autodetection" value="class, hbm" />
            <property name="hibernate.hbm2ddl.auto" value="validate" />
            <property name="hibernate.show_sql" value="true" />
        </properties>
    </persistence-unit>
</persistence>

Kesimpulan

Walaupun tidak wajib untuk menentukan entiti secara terus dalam kegigihan .xml, berbuat demikian memastikan kawalan eksplisit ke atas kelas yang diurus oleh penyedia kegigihan. Menggunakan elemen fail jar atau ciri pengesanan automatik Hibernate memberikan lebih fleksibiliti dalam mengurus entiti.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menentukan entiti dalam persistence.xml untuk JPA?. 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