Tôi muốn tận dụng các chú thích JPA @Entity để không khai báo các thực thể lớp một tệp persistence.xml J2SE. Những gì tôi muốn tránh:Có cách nào để quét các thực thể JPA không khai báo các lớp liên tục trong một tệp persistence.xml không?
<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>com.mycompany.entities.Class1</class>
<class>com.mycompany.entities.Class2</class>
<class>com.mycompany.entities.Class3</class>
</persistence-unit>
và đây là những gì persistence.xml thực tế của tôi trông giống nhau
<persistence-unit name="test" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<!-- Scan for annotated classes and Hibernate mapping XML files -->
<property name="hibernate.archive.autodetection" value="class, hbm" />
<property name="hibernate.cache.use_second_level_cache" value="false" />
<property name="hibernate.cache.use_query_cache" value="false" />
<property name="hibernate.hbm2ddl.auto" value="create-drop" />
</properties>
</persistence-unit>
Có một cách tiêu chuẩn để quét các đối tượng JPA trong một tập tin persistence.xml từ bên trong một mô-đun JAR? Có cách nào không chuẩn Hibernate để quét các thực thể JPA trong một tệp persistence.xml từ bên trong một mô-đun JAR không?
Có vẻ như vậy, nhưng nó không hoạt động trong trường hợp của tôi. \t Đây là định nghĩa của thuộc tính hibernate.archive.autodetection: "Xác định phần tử nào được tự động phát hiện bởi Trình quản lý thực thể Hibernate trong khi phân tích cú pháp tệp .par. (Mặc định là lớp, hbm).". Nhưng một kho lưu trữ .par là gì? Tôi đã không bao giờ nghe nói về một arhive như vậy. – 1tox
NB: Tôi đã cập nhật bài đăng gốc – 1tox
Lưu trữ .par là tệp lưu trữ liên tục nơi các thực thể của bạn và persistence.xml có thể được nhóm lại. Nó không cần thiết, do đó, đừng lo lắng về nó (xem bài viết cuối cùng từ một thành viên trong nhóm Hibernate ở đây: https://forum.hibernate.org/viewtopic.php?f=9&t=947671). Một gợi ý khác là thêm: false exclude-unlisted-classes> vào đơn vị kiên trì của bạn. –
Cody