2013-10-13 88 views
0

我跟着这个教程:http://manikandanmv.wordpress.com/2011/04/13/hibernate-basics-simple-example/Hibernate映射文件未找到(MappingNotFoundException)

这是我的文件结构 http://i.stack.imgur.com/sX3nn.jpg

当我运行的Java Applet,我得到这个错误

Initial SessionFactory creation failed.org.hibernate.MappingNotFoundException: resource: src/com/bookstore/bookapp.hbm.xml not found 

然而,我可以在那里看到那个文件。当我把文件在

workspace-windows\226project1\src\com\bookstore 

即使这样,我仍然面临这个错误,有人可以帮忙吗?

这是我的hibernate.cfg.xml

<!DOCTYPE hibernate-configuration PUBLIC 
"-//Hibernate/Hibernate Configuration DTD 3.0//EN" 
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> 

<hibernate-configuration> 

<session-factory> 

<!-- Database connection settings --> 
<property name="connection.url">jdbc:postgresql://localhost:5432/postgres</property> 
<property name="connection.driver_class">org.postgresql.Driver</property> 
<property name="connection.username">postgres</property> 
<property name="connection.password">rocker123</property> 
<property name="transaction.factory_class">org.hibernate.transaction.JDBCTransactionFactory</property> 

<!-- SQL dialect --> 
<property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property> 

<!-- Echo all executed SQL to stdout --> 
<property name="show_sql">true</property> 

<!-- Enable Hibernate's automatic session context management --> 
<property name="current_session_context_class">thread</property> 

<!-- Drop and re-create the database schema on startup --> 
<property name="hbm2ddl.auto">create</property> 

<mapping resource="src/com/bookstore/bookapp.hbm.xml"/> 
</session-factory> 
</hibernate-configuration> 

回答

0

移动你的映射文件到的src/main /资源。只有.java文件属于src/main/java。

在github上有一个示例项目,演示了如何从hibernate.cfg.xml正确引用XML映射文件。请参阅https://github.com/zzantozz/testbed/tree/master/hibernate-with-xml-mappings

+0

感谢您的回复。请看看我的filestructure在这里:http://i.stack.imgur.com/sX3nn.jpg 我已经将我的java文件移动到src/main/java和.xml到src/main/resources,但我们是得到同样的问题。 请帮忙 –

+0

生成一个单独的资源文件夹,右键单击它并选择Build Path>用作源文件夹。这样它就在类路径中,但是你不会将它与Java源文件混合在一起。 –

+0

的问题已经解决了通过执行以下操作: 1)移动到bookapp.hbm.xml/SRC/ 2)修改hibernate.conf.xml <映射资源=“SRC/COM /书店/ bookapp。 hbm.xml“/> 至 (使用点代替/) 修复了此问题。 我想休眠不能很好地与/'es –