hibernate注解报错org.hibernate.MappingException: Unknown entity

使用annotation配置SSH2项目时,遇到这样的错误:

org.hibernate.MappingException: Unknown entity: com.jp.bean.TUser 
 at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:628) 
 at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:91) 
 at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:906) 
 at org.hibernate.impl.SessionImpl.get(SessionImpl.java:843) 
 at org.hibernate.impl.SessionImpl.get(SessionImpl.java:836) 
 at com.jp.dao.UserDao.getTUser(UserDao.java:31) 
......

提示未知的实体。 可能的原因: 

 1、配置实体类时为@Entity导包时 错误的导入了 import org.hibernate.annotations.Entity 应该更改为import javax.persistence.Entity; 

2、applicationContext.xml中配置实体扫描时路径出错, 比如:实体类存放在com.demo.entity包下, 则路径就要配为 <property name="packagesToScan"value="com.demo.*"/> 而不是 <property name="packagesToScan"value="com.demo.entity.*"/> 也就是说配置映射目录要比实际少一层。 

或者直接使用 

<property name="annotatedClasses"> 
<list>      
<value>com.demo.entity.TUser</value>      
......   
</list> 
</property>

 指定相应的实体类(实体类较少时)。 

 

来源:http://www.thinksaas.cn/topics/0/105/105980.html

猜你喜欢

转载自747017186.iteye.com/blog/2344034