2016-08-10 5 views
0

Hibernateを使用すると、これがすべてのテーブルが作成された最初の実行であるかどうかを調べる方法はありますか?このコードの後データベースが作成されたかどうかを確認するためのHibernate APIはありますか?

は、その状態を取得する(多分SessionFactory上)APIがあります:私のユースケースについては

sessionFactory = new Configuration().configure(new File("hibernate.cfq.xml")).buildSessionFactory(); 

私は1つのテーブルが作成されたことを知っていれば、それは十分だろう。
他の初期タスクを実行できます。初期データをデータベースに書き込む。

編集:この私が使用しているhibernate.hbm2ddlさ:

<property name="hbm2ddl.auto">update</property> 
+0

どのhibernate.hbm2ddlを使用していますか? – davidxxx

答えて

1

を、次のプロパティをHibernateはあなたを助けることがあります。

hibernate.hbm2ddl.import_files

このプロパティで指定スタートアップ時に実行されるSQLスクリプトで、必要なビジネスロジック上でメタデータとブランチを簡単に照会できます。

を使用している場合はエンティティモデルに基づく変更が実行されているか、createを使用している場合はスキーマが作成されているので、指定されたスクリプトはスキーマツールが実行された後に実行されます。またはcreate-drop

関連する問題