web-dev-qa-db-ja.com

hibernate.cfg.xmlを配置する場所

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

/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
43
Noor

構成ファイルhibernate.cfg.xmlclasspathにある必要があります

これは、プロジェクトに応じてさまざまな方法で実現できます。

  • web-app WARプロジェクトの場合(プログラムをサーブレットコンテナで実行している場合):WEB-INF/classesに配置すると、WEB-INF/classesのファイルがクラスパスで表示されるときに機能しますアプリはコンテナで実行されています。

  • Maven-styleプロジェクトの場合(サーブレットコンテナでプログラムを実行しない):/src/main/resources/に配置すると動作します

  • それ以外の場合は、src/ディレクトリで試してください。

22
Don Cheadle

私はmavenを使用していますが、src/main/resourcesにhibernate.cfg.xmlを配置するまで機能しませんでした。

14
ksnortum

プロジェクトのルートで:/src(デフォルトでリート)

/srcソースはディレクトリですか?
新しいJavaクラスを作成すると、パッケージに含まれます(通常は、作成されたディレクトリと同じ名前で呼び出されます)。クラス宣言では、次のように表示されます。

package foo;

class MyClass{

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

11
manix

webプロジェクトでない場合は、明示的にそのようにします

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

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

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

4
Elbek

ファイルは/src dirのルートに移動し、/srcはデプロイされず、その中のすべてがWEB-INF/classes which ISに構築/コピーされます展開されました。 Hibernateには、プロジェクトのclasspathcfg.xmlファイルが必要です。設定を読み込むには、WEB-INF dirがclasspathにないため、そこにいると、Hibernateからhidingになってしまい、動作しません。

この thread は、異なるパスからhibernate.cfg.xmlをロードする方法を示します。

2
SiB

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

1
Dino Tw

それを「src/main/resources "ディレクトリ。

0
Pippi

場所 hibernate.cfg.xmlsrc/フォルダー、またはコード内のパスを次のように明示的に記述します。

new Configuration.configure("path of hibernate.cfg.xml").buildsessionfactory()
0
Arunprasad

Eclipsを使用しているときにCMD + N/CTR + Nを実行すると、ダイアログボックスが開き、Hibernateフォルダーをダブベルクリックする必要があります。 XML拡張でファイルのリストを開きます。 cfg.xmlを選択し、[続行]をクリックして完了したら!完了をクリックします。これで、Eclipsはcfg.xmlファイルにクラス名を追加し、SRCフォルダーの下に表示します。 GB

0
bariyaw