まえがき
O/RマッパでEntityを作成する場合、手書きで作成するのは、すごく大変です。
Entityファイルに大量にあるカラムの設定をしたり、複数プライマリーキーの設定をしたりなど、手作業でするには、ミスもし易いし、こんなところで時間を使いたくないと思ってしまっても仕方がないです。
今回は、Entityを自動生成する(リバースエンジニアリング)手順について説明したいと思います。
HibernateツールをSTSにインストールする手順は、前編を参考にして下さいね。
コンソール構成の追加
- 赤枠内を入力もしくはチェックします。
- 名前:コンソール構成の名前を入力します。(なんでも構いません。)
- 型:注釈(jdk1.5+)をクリックし、Hibernateのバージョンを4.3とします。
- プロジェクト:参照ボタンからEntityの自動生成を行うプロジェクトを選択します。
- データベース接続:「[Hibernate configured connection]」を選択します。
- 構成ファイル:セットアップボタンからhibernate.cfg.xmlファイルを選択します。
- 適用後、OKボタンをクリックします。
- Hibernate4.3のツリーを辿っていくとDBに接続できたことが分かります。
リバース・エンジニアリング・ファイルの作成
- コンソール構成に先程のhibernate4.3を選択し、リフレッシュボタンをクリックします。その後、データベース・スキーマから自動生成したいテーブルを選択し、インクルードボタンをクリックします。そうすると、テーブル・フィルターにテーブルが追加されるので、完了をクリックします。
- リバース・エンジニアリング・ファイルが作成されます。
Entityの自動生成
- Hibernateツールパースペクティブを開きます。その後、「実行>Hibernateコードの生成>Hibernateコードの生成の構成」をクリックします。下記キャプチャで赤枠内クリックでも追加できます。
- 赤枠内の新規構成をクリックします。
- 赤枠内を入力もしくはチェックします。
- ハンドリング名前:構成の名前を入力します。(なんでも構いません。)
- コンソール構成:コンソール構成で作成した構成を選択します。(ここではhibernate4.3)
- 出力ディレクトリ:参照ボタンからjavaファイルのルートパスを選択します。
- JDBC接続からリバース・エンジニアリング:チェックします。
- パッケージ:Entityを作成するパッケージを入力します。
- reveng.xml:セットアップボタンからhibernate.reveng.xmlファイルを選択します。
- エクスポータータブで、赤枠内のチェックをチェックします。その後、適用ボタンをクリックし、実行ボタンをクリックします。
- Entityが自動生成されます。
あとがき
無事、Entityを自動生成することができました。
テーブルの内容はGUIを使って変更し、Entityへの反映は自動生成で行えば、タイプミスも防げるし、大量に変更を行う場合などにかなり有効になってくると思います。ただ、エラーメッセージの設定を行いたい場合は、Entityファイルを直接変更しないといけないため、自動生成するとすべて消えてしまいます。。
用途によって、自動生成と手動作成を使い分けるのがいいと思います。
最後までお読み頂きありがとうございました。