Maison > base de données > tutoriel mysql > Comment résoudre « org.hibernate.MappingException : entité inconnue » dans Hibernate 5 ?

Comment résoudre « org.hibernate.MappingException : entité inconnue » dans Hibernate 5 ?

Susan Sarandon
Libérer: 2024-12-28 08:20:10
original
552 Les gens l'ont consulté

How to Resolve

org.hibernate.MappingException : Entité inconnue dans Hibernate 5

Problème : Une exception se produit avec le message " org.hibernate.MappingException : entité inconnue » lors de la tentative d'intégration d'Hibernate 5.0 avec MySQL.

Cause : Ce problème est rencontré spécifiquement avec les versions Hibernate 5.0.0 et 5.0.1 mais pas avec Hibernate 4.3.9. L'erreur provient d'une différence dans la façon dont Hibernate 5 gère la configuration par rapport aux versions précédentes.

Solution : Pour résoudre ce problème, ajustez le code responsable de la création de SessionFactory :

// Incorrect approach for Hibernate 5
Configuration configuration = new Configuration();
configuration.configure();

ServiceRegistry sr = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();

SessionFactory sf = configuration.buildSessionFactory(sr);
Copier après la connexion

Approche correcte pour Hibernate 5 :

  • Fichiers de configuration XML standard (hibernate.cfg.xml et hibernate.properties) :
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
Copier après la connexion
  • Chargement des propriétés à partir d'un fichier non standard fichier :
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().loadProperties("hibernate-h2.properties").build();
SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);
Copier après la connexion
  • Chargement des propriétés à partir du chemin du fichier :
File propertiesPath = new File("some_path");
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().loadProperties(propertiesPath).build();
SessionFactory sf = new Configuration().buildSessionFactory(serviceRegistry);
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal