如何解决春天冬眠
| 我收到此错误:org.hibernate.MappingException: UnkNown entity: xxx.model.Application
但是,所有内容似乎都已正确配置。谁能看到我想念的东西吗?
<bean class=\"org.springframework.beans.factory.config.PropertyPlaceholderConfigurer\">
<property name=\"location\" value=\"file:/dctm/db.props\"/>
</bean>
<bean id=\"xxxDataSource\" class=\"org.springframework.jdbc.datasource.DriverManagerDataSource\" destroy-method=\"close\">
<property name=\"driverClassName\" value=\"oracle.jdbc.driver.OracleDriver\"/>
<property name=\"url\" value=\"${db.url}\"/>
<property name=\"username\" value=\"${db.username}\"/>
<property name=\"password\" value=\"${db.password}\"/>
</bean>
<bean id=\"xxxSessionFactory\" class=\"org.springframework.orm.hibernate3.annotation.AnnotationSessionfactorybean\">
<property name=\"dataSource\" ref=\"xxxDataSource\"/>
<property name=\"annotatedClasses\">
<list>
<value>xxx.model.Application</value>
</list>
</property>
<property name=\"hibernateProperties\">
<props>
<prop key=\"hibernate.dialect\">${db.dialect}</prop>
<prop key=\"hibernate.show_sql\">${db.debug_sql}</prop>
<prop key=\"hibernate.c3p0.minPoolSize\">1</prop>
<prop key=\"hibernate.c3p0.maxPoolSize\">5</prop>
<prop key=\"hibernate.c3p0.timeout\">${db.timeout}</prop>
<prop key=\"hibernate.c3p0.max_statement\">50</prop>
<prop key=\"hibernate.c3p0.testConnectionOnCheckout\">false</prop>
<prop key=\"hibernate.current_session_context_class\">thread</prop>
</props>
</property>
</bean>
<bean id=\"patiDao\" class=\"xxx.dao.hibernate.PatiHibernateDao\">
<property name=\"sessionFactory\" ref=\"xxxSessionFactory\"/>
</bean>
解决方法
您是使用JPA还是直接使用Hibernate?如果您使用的是JPA,请尝试定义META-INF / persistence.xml,在其中定义带注释的实体类:
<persistence-unit name=\"myPU\" transaction-type=\"RESOURCE_LOCAL\">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<non-jta-data-source>java:/MyDS</non-jta-data-source>
<class>xxx.model.Application</class>
<class>xxx.model.Class2</class>
<exclude-unlisted-classes />
</persistence-unit>
,您可能会缺少@Entity
@Entity
@Table(name=\"COURSES\")
public class Application{
//some code
}
,我看到此错误的两个原因。首先,如果您错过了Application
类的@Entity
。第二个是如果Application
类不在构建路径中并且没有部署到JBoss。
,您可以尝试通过提供AnnotationSessionFactoryBean的packagesToScan属性的值来(通过类路径扫描)查找@Entity类本身,而不是使用annotatedClasses属性手动指定类。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。