Hibernate报错 org.hibernate.MappingException: Unknown entity
1、如果是使用@Entity注解那么看一下引入包路径
import org.hibernate.annotations.Entity;//这是错误的
import javax.persistence.Entity;//引入这个类是正确的
@Entity
@Table(name="test_person")
public class Person implements Serializable
2、可能是获取sessionFactory方式有问题
Hibernate4.X写法
//生成一个注册机对象
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
//使用注册机机对象serviceRegistry创建sessionFactory
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
//Hibernate5.X版本的写法
//生成一个注册机对象
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
//使用注册机机对象serviceRegistry创建sessionFactory
sessionFactory = new MetadataSources(serviceRegistry).buildMetadata().buildSessionFactory();
3、将.xml中的class标签中的name写为类所在路径。
错误时为:
<class name="Student" table="STUDENTS">
修改后为:
<class name="org.hibernate.model.Student" table="STUDENTS">
4、如果项目是copy已有项目的话,可能是实体类包路径重复,把包路径修改即可。