(注解方式持久化类报错解决方案-仅供参考)org.hibernate.MappingException: Unknown entity: com.rx.entity.po.User
2013-07-16 15:20
1046 查看
//实体类 @Entity @Table(name = "T_SECU_USER_INFO") public class User implements Serializable { /** * */ private static final long serialVersionUID = 1L; @Id @Column(name = "USER_NAME") private String userName; @Column(name = "PASS_WORD") private String passWord; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassWord() { return passWord; } public void setPassWord(String passWord) { this.passWord = passWord; } }
下面是Spring中Hibernate的配置
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource"> <ref local="dataSource" /> </property> <property name="packagesToScan"> <list> <value>com.rx.entity.po.*</value> </list> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${c3p0.dialect}</prop> <prop key="hibernate.jdbc.fetch_size">50</prop> <prop key="hibernate.jdbc.batch_size">30</prop> <prop key="hibernate.connection.release_mode">auto</prop> <prop key="hibernate.autoReconnect">true</prop> <prop key="hibernate.cglib.use_reflection_optimizer">true</prop> <prop key="hibernate.show_sql">true</prop> </props> </property> </bean>
报错
org.hibernate.MappingException: Unknown entity: com.rx.entity.po.User org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:550) org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:68) org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878) org.hibernate.impl.SessionImpl.get(SessionImpl.java:815) org.hibernate.impl.SessionImpl.get(SessionImpl.java:808) org.springframework.orm.hibernate3.HibernateTemplate$1.doInHibernate(HibernateTemplate.java:531) org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:419) org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374) org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:525) org.springframework.orm.hibernate3.HibernateTemplate.get(HibernateTemplate.java:519) com.rx.dao.daoImpl.HibernateQueryDaoImpl.get(HibernateQueryDaoImpl.java:27) com.rx.action.LoginAction.execute(LoginAction.java:54) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:441).........................
解决方案:
1.我的实体类User是放在package com.rx.entity.po包下的,在Spring中引用方式是
<property name="packagesToScan">
<list>
<value>com.rx.entity.po.*</value>
</list>
</property>
引用的时候不能引用到com.rx.entity.po.*,而是到com.rx.entity.*下
<property name="packagesToScan">
<list>
<value>com.rx.entity.*</value>
</list>
</property>
applicationContext.xml中配置实体扫描时路径出错,
比如:实体类存放在com.demo.entity包下,
则路径就要配为 <property name="packagesToScan" value="com.demo.*"/>
而不是 <property name="packagesToScan" value="com.demo.entity.*"/>
也就是说配置映射目录要比实际少一层。
2.@Entity引入的类是import javax.persistence.Entity;而不是import org.hibernate.annotations.Entity;
相关文章推荐
- org.hibernate.MappingException: Unknown entity: com.test.xbt.entity.User
- Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.pojo.User
- Hibernate 5;org.hibernate.MappingException: Unknown entity: com.my.model.User
- org.hibernate.MappingException: Unknown entity: com.zhou.web.entity.User
- org.hibernate.MappingException:unknown entity:com.lmy.model.User
- org.hibernate.MappingException Unknown entity com.po.Dept问题的解决
- 求助!第一个hibernate程序报错 org.hibernate.MappingException: Unknown entity: com.pojo.User
- org.hibernate.MappingException:unknown entity:com.lmy.model.User
- org.hibernate.MappingException: Unknown entity: com.pkms.entity.User
- Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.hibernate.domain.User
- myeclipse中出现 org.hibernate.MappingException: Unknown entity: cn.itcast.hibernate.domain.User
- org.hibernate.MappingException: Unknown entity: com.fei.model.Student
- Exception in thread "main" org.hibernate.MappingException: Unknown entity: com.mao.PersonSet
- HibernateTemplate删除方式 org.hibernate.MappingException: Unknown entity: java.lang.Long
- org.hibernate.MappingException: Unknown entity: com.huangliusong.entity.Person
- 痛苦的异常:org.hibernate.MappingException: Unknown entity: cn.XXXX.EB.po.Goodsortinfo
- HibernateTemplate删除方式 org.hibernate.MappingException: Unknown entity: java.lang.Long
- org.hibernate.MappingException: Unknown entity: com.fish.pojo.People
- org.hibernate.MappingException: Unknown entity: com.yyw.bean.Post几种可能
- org.hibernate.MappingException:Unknown entity:java.util.ArrayList