Heim >Datenbank >MySQL-Tutorial >Warum löst Hibernate 5.0 die MappingException „Unknown Entity' aus und wie kann ich das Problem beheben?
Hibernate MappingException: Unbekannte Entität in Hibernate 5
Bei der Integration von Hibernate 5.0 mit MySQL kann der Fehler „org.hibernate.MappingException“ auftreten : Unbekannte Entität.“ Dieses Problem tritt häufig in den Versionen 5.0.0 und 5.0.1 auf, jedoch nicht in Hibernate 4.3.9.
Diagnose
Das Problem ist auf eine Nichtübereinstimmung im Ruhezustand zurückzuführen 5 Konfigurationscode. Das folgende Codefragment aus Ihrer Klasse „HibernateMain.java“ ist problematisch:
Configuration configuration = new Configuration(); configuration.configure(); ServiceRegistry sr = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build(); SessionFactory sf = configuration.buildSessionFactory(sr);
In Hibernate 5 führt die Verwendung von „configuration.buildSessionFactory(sr)“ zu einem Verlust von Zuordnungsinformationen, die während „configuration.configure()“ erfasst wurden.
Lösung
Um dieses Problem zu beheben, verwenden Sie den folgenden Ansatz ohne ServiceRegistry:
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Zusätzliche Ladeoptionen für Eigenschaften
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder(). configure().loadProperties("hibernate-h2.properties").build(); SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);
File propertiesPath = new File("some_path"); ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder(). configure().loadProperties(propertiesPath).build(); SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);
Fazit
Vermeiden Sie die Verwendung der falschen Konfigurationsmethode, die im Hibernate 5-Tutorial 1.1.6 vorgestellt wird. Nutzen Sie die oben genannten Lösungen, um das Problem „Unbekannte Entität“ zu beheben und eine erfolgreiche Hibernate 5-Integration mit MySQL herzustellen.
Das obige ist der detaillierte Inhalt vonWarum löst Hibernate 5.0 die MappingException „Unknown Entity' aus und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!