48

私のプロジェクトは次のようなものです:

/src/main/java
     -thegamers
         -app.java
         -hibernateutil.java

hibernate.cfg.xml をどこに置くか教えてもらえますか?

このエラーが発生するため:

Initial SessionFactory creation failed.org.hibernate.HibernateException: hibernate.cfg.xml not found
Exception in thread "main" java.lang.ExceptionInInitializerError
    at thegamers.HibernateUtil.buildSessionFactory(HibernateUtil.java:17)
    at thegamers.HibernateUtil.<clinit>(HibernateUtil.java:8)
    at thegamers.App.main(App.java:15)
Caused by: org.hibernate.HibernateException: hibernate.cfg.xml not found
    at org.hibernate.util.ConfigHelper.getResourceAsStream(ConfigHelper.java:170)
    at org.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:2149)
    at org.hibernate.cfg.Configuration.configure(Configuration.java:2130)
    at thegamers.HibernateUtil.buildSessionFactory(HibernateUtil.java:13)
    ... 2 more
4

9 に答える 9

14

私はmavenを使用していますが、hibernate.cfg.xmlを.xmlに入れるまでうまくいきませんでしたsrc/main/resources

于 2014-04-15T16:58:31.300 に答える
11

プロジェクトのルート: /src(少なくともデフォルトでは)

/srcソースディレクトリかどうかを知る方法は?
新しい Java クラスを作成すると、それはパッケージに含まれます (通常、作成されたディレクトリと同じ名前で呼び出されます)。したがって、クラス宣言では、次のようなものを見ることができます。

package foo;

class MyClass{

デフォルトの IDE 設定では、クラスは の下にあり/src/foo/MyClass.javaます。ご覧のとおり、このシナリオで/srcはルート ソース dir として機能します。

于 2012-10-01T17:11:00.193 に答える
4

それがWebプロジェクトでない場合は、明示的にそのようにしてください

new Configuration().configure( "pth/to/hibernate.cfg.xml").buildsessionfactory()

これが役立つことを願っています

@SiB はリンク (mkyong の Web サイト) を示しました。そこでよく説明されています。

于 2012-10-01T17:22:59.330 に答える
2

ファイルはディレクトリのルートに入ると想定されていますが、デプロイされていない/src/srcは、ファイル内のすべてがビルド/コピーされてWEB-INF/classes、ISがデプロイされます。Hibernateは、構成設定をロードするためにプロジェクトcfg.xml内のファイルを必要とします。ディレクトリはにありません。したがって、そこに配置すると、Hibernateから非表示になり、機能しなくなりますclasspathWEB-INFclasspath

このスレッドは、別のパスからhibernate.cfg.xmlをロードする方法を説明します。

于 2012-10-01T17:14:37.397 に答える
1

Eclipse を使用している場合は、[プロジェクト] -> [プロパティ] -> [Java ビルド パス] -> [ソース] に移動します。ファイルを配置した新しいフォルダーを追加するか、既存のフォルダーにファイルを移動できます。

于 2013-05-24T05:56:57.387 に答える
0

hibernate.cfg.xmlフォルダーの下に配置するsrc/か、コード内のパスを次のように明示的に指定します。

new Configuration.configure("path of hibernate.cfg.xml").buildsessionfactory()
于 2017-08-21T13:12:35.483 に答える
-1

src/main/resources" " ディレクトリに配置してみてください。

于 2017-09-07T14:56:06.500 に答える