org.hibernate.MappingException: Unknown entity常见问题。回顾笔记,以前没记,现在补上,xiaochao写的蛮好的直接给转载了。

转自http://www.blogjava.net/xiaochao/articles/hibernatetopic.html。

官方说明如下:

Hibernate遵循EJB3.0实体bean的注解规范,Hibernate拥有特有的扩展。

JPA由EJB 3.0软件专家组开发,作为JSR-220实现的一部分。JPA的宗旨是为POJO提供持久化标准规范。Hibernate3.2、TopLink 10.1.3以及OpenJPA都提供了JPA的实现。

JPA是需要Provider来实现其功能的,Hibernate就是JPA Provider中很强的一个,应该说无人能出其右。从功能上来说,JPA就是Hibernate功能的一个子集。Hibernate 从3.2开始,就开始兼容JPA。Hibernate3.2获得了Sun TCK的JPA(Java Persistence API) 兼容认证。所以Hibernate注解依赖的是hibernate-jpa.jar,而不是hibernate-core.jar。

在Hibernate配置文件hibernate.hbm.xml 不引用实体类(同样会报以上的错):

  • xml方式:<mapping resource="com/wsw/hibernate/model/Person.hbm.xml"/>
  • 注解方式:<mapping class="package.class"/>
原文地址:https://www.cnblogs.com/xiluhua/p/4358269.html