org.hibernate.MappingException:Hibernate 5 中的未知实体
问题:发生异常并显示消息“尝试将 Hibernate 5.0 与 org.hibernate.MappingException 集成时出现“未知实体” MySQL.
原因:此问题特别在 Hibernate 5.0.0 和 5.0.1 版本中遇到,但在 Hibernate 4.3.9 中不会遇到。该错误源于 Hibernate 5 与以前版本相比处理配置的方式存在差异。
解决方案:要解决此问题,请调整负责创建 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);
Hibernate 的正确方法5:
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
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);
以上是如何解决 Hibernate 5 中的'org.hibernate.MappingException:未知实体”?的详细内容。更多信息请关注PHP中文网其他相关文章!