Java 获取hibernate实体错误
我正在使用spring应用程序中的hibernate。但是由于一些问题,我不能使用spring注入,所以我必须手动声明会话工厂,如下所示Java 获取hibernate实体错误,java,hibernate,Java,Hibernate,我正在使用spring应用程序中的hibernate。但是由于一些问题,我不能使用spring注入,所以我必须手动声明会话工厂,如下所示 SessionFactory sessionFactory = new AnnotationConfiguration() .configure("com/vaannila/service/hibernate.cfg.xml") .buildSessionFactory(); Session session
SessionFactory sessionFactory = new AnnotationConfiguration()
.configure("com/vaannila/service/hibernate.cfg.xml")
.buildSessionFactory();
Session session = sessionFactory.openSession();
Registration person = (Registration) session.get(Registration.class, 1);
当我在实体类中使用注释时,我得到以下错误
org.hibernate.MappingException: Unknown entity: com.vaannila.domain.Registration
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- We're using MySQL database so the dialect needs to MySQL as well-->
<property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<!-- Enable this to see the SQL statements in the logs-->
<property name="show_sql">true</property>
<!-- This will drop our existing database and re-create a new one.
Existing data will be deleted! -->
<property name="hbm2ddl.auto">update</property>
<mapping class="com.vaannila.domain.Country" />
</session-factory>
</hibernate-configuration>
org.hibernate.MappingException:未知实体:com.vaannila.domain.Registration
org.hibernate.dialogue.mysql5innodbdialogue
真的
更新
这可能是因为类注册的FQCN条目错误,或者您可能
import javax.persistence.Entity;
而不是
import org.hibernate.annotations.Entity;
确保您的注册类使用“
javax.persistence.Entity
”进行了正确的注释。
我只是想确定一下,当我错过这个机会的时候,我也遇到了同样的麻烦
import javax.persistence.Entity;
@Entity
public class Registration{
}
另一个原因可能是类未列在
hibernate.cfg.xml
中:
<mapping class="your.package.Registration"/>
就我个人而言,我还没有找到强制独立Hibernate扫描实体注释的方法,所以我在里面有一个相当大的映射列表 你能复制你的hbm文件代码吗?我想我的问题是,我有两个配置了hibernate的文件,我不知道在java代码中应该包含哪一个。这是我的新问题,有两个文件