連載 [第6回] :
徹底比較!! O/Rマッピングツール多機能なHibernate(後編)
2006年8月28日(月)
設定ファイルの適用
各種設定が終了したら「Exporters」タブを選択します。
ここでは生成するファイルを選択します。今回は、DTO/マッピング・ファイル/Hibernate設定ファイルを選択します。生成したいファイルを選択したら「実行」ボタンを押します。
「実行」ボタンを押すとファイルの保存先と同様のフォルダにDTOとマッピング・ファイルが作成されています。
また、Hibernate設定ファイルの内容が更新されます。
DAOの作成
次にDAOを作成します。DAOもHibernate Toolsによって自動生成できます。
また、Hibernate Toolsとは別のEclipseプラグインとして「Hibernate Synchronizer」という自動生成ツールも存在します。Hibernate SynchronizerはマッピングファイルからDAOパターンやGeneration Gapパターンを利用したコードを生成することができます。
Hibernate SynchronizerのWebサイト
http://sourceforge.net/projects/hibernatesynch/
http://sourceforge.net/projects/hibernatesynch/
なお、今回は説明もかねますので手動で作成します。
まずは、ShainDaoクラスです。
DAOクラス(ShainDao.java)
package hibernate;
|
このクラスでは、検索処理に1の「HQL」と2の「Criteria」を使用しています。「HQL」とはHibernateで用意されている簡易検索言語です。また、Torqueと同じように「Criteria」を使用して検索処理を行うことも可能です。なお、1と2の検索結果は同じです。
続いて、BushoDaoクラスです。
DAOクラス(BushoDao.java)
package hibernate;
|
このクラスでは挿入処理にsave()メソッドを使用しています。
save()メソッドはTorqueでも使用しましたが、Torqueと異なる点は、Torqueはデータオブジェクト自身のsave()メソッドを呼び出していましたが、HibernateではSessionオブジェクトのsave()メソッドを呼び出します。
Sessionオブジェクトのsave()メソッドを呼び出すことによって、オブジェクトをHiberntateのSessionに関連付けることができます。save()メソッドの呼び出しによって、オブジェクトの状態が一時オブジェクトから永続オブジェクトへと状態が遷移します。
連載バックナンバー
Think ITメルマガ会員登録受付中
Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。