Maison >Java >javaDidacticiel >Hibernate 5 : Pourquoi est-ce que j'obtiens l'erreur « org.hibernate.MappingException : entité inconnue » et comment puis-je la corriger ?
Hibernate 5 : Résolution de l'erreur « org.hibernate.MappingException : entité inconnue »
Problème :
Vous avez rencontré l'erreur « org.hibernate.MappingException : Entité inconnue » en essayant d'intégrer Hibernate 5.0 à MySQL. Cette erreur se produit avec les versions Hibernate 5.0.0 et 5.0.1 mais pas avec Hibernate 4.3.9.
Cause :
Le problème survient en raison d'un changement dans le La manière dont SessionFactory est créée avec Hibernate 5. L'utilisation de la méthode Configuration().buildSessionFactory(sr) comme dans les versions antérieures d'Hibernate ne fonctionne plus, car elle supprime les informations de mappage.
Solution :
Pour résoudre cette erreur, il existe deux approches :
1. Configuration simplifiée :
Pour les fichiers de configuration standard comme hibernate.cfg.xml et hibernate.properties, vous pouvez créer SessionFactory sans utiliser ServiceRegistry :
<code class="java">SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();</code>
2. Utilisation de StandardServiceRegistryBuilder pour charger les propriétés :
Si vous avez des propriétés dans des fichiers autres que hibernate.properties, vous pouvez utiliser StandardServiceRegistryBuilder pour les charger :
Chargement des propriétés en tant que ressource :
<code class="java">ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder(). configure().loadProperties("hibernate-h2.properties").build(); SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);</code>
Chargement des propriétés à partir d'un chemin de système de fichiers :
<code class="java">File propertiesPath = new File("some_path"); ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder(). configure().loadProperties(propertiesPath).build(); SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);</code>
Remarques supplémentaires :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!