Hibernate .hbm.xml文件在应用程序中的路径?
问题描述:
我有这个代码行从文件Hibernate .hbm.xml文件在应用程序中的路径?
private void createAndStoreEvent(String title, Date theDate) {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Event theEvent = new Event();
theEvent.setTitle(title);
theEvent.setDate(theDate);
session.save(theEvent);
session.getTransaction().commit();
}
在这里我不会给Event.hbm.xml文件的路径和Hibernate 我怀疑是哪个目录休眠是指找到 Event.hbm。 xml用于映射Event.java实体类? 现在我将Event和Event.hbm.xml文件保存在同一个包中。
答
通常,Event.hbm.xml
应该在与Event.class
文件相同的包中的运行时类路径中结束。如果它是一个Web应用程序,就像/WEB-INF/classes/foo/bar/
。也就是说,把它放在src
文件夹中可能没问题,因为你的IDE
应该在构建过程中自动将它放入/WEB-INF/classes/foo/bar
。
答
在你的hibernate-configuration xml中,你通常应该定义你的其他hbm文件如下;
<mapping resource="com/domain/Event.hbm.xml"/>
.hbm.xml文件的名称是否必须与实体类名相似? – MyStack