我想使用Configuration()methot。但是我得到了这个错误:
Initial SessionFactory creation failed.org.hibernate.MappingException: An AnnotationConfiguration instance is required to use <mapping class="com.example.domain.Lesson"/>
如果我使用AnnotationConfiguratin()方法,Hibernate可以读取我的类。我不明白这一点:
为什么当我使用Configuration方法时,Hibernate看不到<mapping class="com.example.Lesson"/>
定义?
我的hibernate.cfg.xml
文件:
<?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>
<property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
<property name="hibernate.connection.password">****</property>
<property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/DB</property>
<property name="hibernate.connection.username">postgres</property>
<property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<mapping resource="com.example/Lesson.hbm.xml" />
<mapping class="com.example.Lesson"/>
</session-factory>
</hibernate-configuration>
我的课程课程:
public class Lesson implements java.io.Serializable {
private int id;
private String lesson;
private Set lessons = new HashSet(0);
public Lesson() {
}
public Lesson(int id, String lesson, Set lessons) {
this.id = id;
this.id = id;
this.lessons = lessons;
}
continue..
}
我有来自reverse engineering.
的bhm.xml文件所以,我不想使用Annotation。
有什么想法吗?
答案 0 :(得分:1)
只需从<mapping class="com.example.Lesson"/>
移除hibernate.cfg.xml
即可。没有必要,因为Lesson.hbm.xml
存在。