hibernate Unknown entity异常解决方案

本文介绍了如何通过配置Spring的LocalSessionFactoryBean来正确扫描Hibernate实体类,解决了因路径配置错误而导致的实体类无法被识别的问题,并提供了实体注解引入错误的案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

po 居然找不到

搞了半天 然后发现改动过扫描hibernate的实体的路径

 

	<bean id="revitbusSessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
		<property name="dataSource" ref="revitbusDataSource" />
		<!-- <property name="packagesToScan" value="com.bimatrix.revit.po" /> -->
		<property name="packagesToScan">  
            <list>  
                <value>com.bimatrix.revit.po</value>  
            
                <value>com.bimatrix.revit.shiro</value> 
            </list>  
        </property> 
		<property name="hibernateProperties">
			<props>
				<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
				<prop key="hibernate.show_sql">false</prop>
				<prop key="hibernate.format_sql">false</prop>
				<prop key="current_session_context_class">thread</prop> 
			</props>
		</property>
	</bean>


然后加上新增po 扫描的路径如下 

   <value>com.bimatrix.revit.npo</value>

 

 

<bean id="revitbusSessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="revitbusDataSource" />
<!-- <property name="packagesToScan" value="com.bimatrix.revit.po" /> -->
<property name="packagesToScan">  
            <list>  
                <value>com.bimatrix.revit.po</value>  
                 <value>com.bimatrix.revit.npo</value>
                <value>com.bimatrix.revit.shiro</value> 
            </list>  
        </property> 
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">false</prop>
<prop key="hibernate.format_sql">false</prop>
<prop key="current_session_context_class">thread</prop> 
</props>
</property>
</bean>

 

 

 

 

 

就可以了 这个问题 可能会有多个原因导致

 

 

比如这个朋友的遇到情况

 

 

最近学习Hiberante Annotations时遇到了该问题org.hibernate.MappingException: Unknown entity在baidu和googl上搜寻了 很久也没有找到适合我的解决方法,最后发现是import Entity类造成的(使用Eclipse自动提示导入的该包)

import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import org.hibernate.annotations.Entity;//这是就出问题了哦

@Entity
@Table(name="test_person")
public class Person implements Serializable

后面修改了引入的Entity

import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.persistence.Entity;//引入这个类就正确了

@Entity
@Table(name="test_person")
public class Person implements Serializable

另外有些报org.hibernate.MappingException: Unknown entity,可能是没有在cfg文件中加入 *.hbm.xml造成的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值