Heim >Java >javaLernprogramm >Wie kann ich Entitäten in persistence.xml für JPA definieren?
Entitäten in persistence.xml
In der Java Persistence API (JPA) informiert die Datei persistence.xml den Persistenzanbieter über die Persistenzeinheiten in der Anwendung und dient als Konfigurationsdatei. Eine seiner Funktionen besteht darin, die Entitäten zu definieren, die von der Persistenzeinheit verwaltet werden sollen.
Automatisches Entity-Scanning
JPQL sucht automatisch nach Entitäten in den Java-Paketen mit den Klassen angegeben in der
Verwendung des jar-file-Elements
Anstatt die Entitäten manuell aufzulisten, Mit dem Element jar-file können Sie eine oder mehrere JAR-Dateien angeben, die die Entitätsklassen enthalten. Der Persistenzanbieter durchsucht diese JAR-Dateien nach Klassen, die mit @Entity annotiert sind.
<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>
Automatische Erkennung im Ruhezustand
Hibernate unterstützt speziell die automatische Erkennung von Entitäten auch in Java SE-Anwendungen. Um dies zu ermöglichen, fügen Sie die Eigenschaft hibernate.archive.autodetection zu persistence.xml hinzu:
<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>
Fazit
Während es nicht zwingend erforderlich ist, Entitäten direkt in der Persistenz anzugeben .xml, wodurch eine explizite Kontrolle darüber gewährleistet wird, welche Klassen vom Persistenzanbieter verwaltet werden. Die Verwendung von JAR-Dateielementen oder der automatischen Erkennungsfunktion von Hibernate bietet mehr Flexibilität bei der Verwaltung von Entitäten.
Das obige ist der detaillierte Inhalt vonWie kann ich Entitäten in persistence.xml für JPA definieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!