Hibernate 5: Behebung des Fehlers „org.hibernate.MappingException: Unbekannte Entität“
Bei der Integration von Hibernate 5.0 mit MySQL kann es zu Problemen kommen der Fehler „org.hibernate.MappingException: Unbekannte Entität.“ Dieses Problem tritt insbesondere bei den Hibernate-Versionen 5.0.0 und 5.0.1 auf, während Hibernate 4.3.9 ohne dieses Problem funktioniert.
Fehlerursache
In Hibernate 5 , eine Änderung in der Art und Weise, wie Hibernate seine Konfiguration liest, führte zu diesem Fehler. Insbesondere werden die aus hibernate.cfg.xml gelesenen Konfigurationsinformationen nicht ordnungsgemäß angewendet, wenn der StandardServiceRegistryBuilder zum Erstellen der SessionFactory verwendet wird.
Lösung
Um diesen Fehler zu beheben, klicken Sie hier Hier sind einige zu berücksichtigende Ansätze:
Verwendung der Basiskonfigurationsmethode
Für eine einfachere Lösung vermeiden Sie die Verwendung des StandardServiceRegistryBuilder und erstellen Sie stattdessen die Sitzungsfabrik direkt aus dem Konfigurationsobjekt :
<code class="java">SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();</code>
Eigenschaften laden
Wenn Sie zusätzliche Eigenschaften außerhalb von hibernate.properties definiert haben, können Sie diese mit dem StandardServiceRegistryBuilder laden:
<code class="java">ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder() .configure() .loadProperties("hibernate-h2.properties") .build(); SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);</code>
Fluent-Hibernate verwenden
Sie können für einen bequemeren Ansatz auch die Fluent-Hibernate-Bibliothek nutzen, wie im GitHub-Projekt „fluent-hibernate-mysql“ demonstriert.
Zusätzliche Überlegungen
Beachten Sie, dass das Beispiel des Hibernate 5-Tutorials in Abschnitt 1.1.6 falsch ist. Beim Erstellen der SessionFactory kann die richtige Konfiguration nicht geladen werden, was zu Zuordnungsproblemen führt.
Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „org.hibernate.MappingException: Unbekannte Entität' in Hibernate 5 mit MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!