Middlegen for Hibernate

Middlegenはデータベースのテーブル定義から魔法のようにJavaコードやマッピングファイルを生成してくれます。しかし、Middlegenを利用するには、Antのビルドファイルを作成する必要があり、少し面倒です。そこで、簡単に使えるAntのビルドファイルのテンプレートを作ってみました。このテンプレートを使えば、データベースのテーブルからHibernate用のマッピングファイルとJavaクラスを簡に生成することができます。Middlegenの詳細については、Middlegenのデモをご覧下さい。ここでは、Middlegen2.1を利用してデータベースのテーブル定義からHibernateのマッピングファイルとクラスを生成します。Middlegenの詳細については、下記の書籍もご覧下さい。

http://images-jp.amazon.com/images/P/4839917779.01.MZZZZZZZ.jpg

HibernateとMiddlegenの連携を徹底解説

購入はこちら

インストール

http://sourceforge.net/projects/hibernateからhibernate2、hibernate-ext、http://sourceforge.net/project/showfiles.php?group_id=36044 からmiddlegen-2.1をダウンロードし、適当なディレクトリに解凍する。

Debianの場合はパッケージvelocityがあるとエラーになるので,パージしておく.

コンフィギュレーション

  1. ビルドファイルbuild.xmlとプロパティファイルbuild.propertiesをダウンロードして適当なディレクトリにコピーする。
  2. build.propertiesの下記の部分を先ほどダウンロードしたhibernate2,hibernate-ext,middlegenに合わせて変更する。
    middlegen.dir	  = c:/java/middlegen-2.1
    hibernate.dir	  = c:/java/hibernate-2.1
    hibernate-ext.dir  = c:/java/hibernate-extensions-2.1.2
  3. build.propertiesのデータベースの設定を変更する。
    # データベースの設定
    database.driver	= org.postgresql.Driver
    database.url	= jdbc:postgresql://localhost/test
    database.userid	= postgres
    database.password	= postgres
  4. アプリケーション名と生成するJavaクラスのファイル名を適当に指定
    # 生成するHibernateの設定ファイル(*.hbm.xml)と
    # Javaクラスのパッケージ名
    package	        = org.ultimania.vo  
    
    # アプリケーション名
    name		= myapp

実行

antを実行します。

> ant compile
> ...
> dir build/classes/org/ultimania/vo
Address.class  Address.hbm.xml  Student.class  Student.hbm.xml

このようにクラスとHibernateのマッピングファイルが生成されます。

サンプルについて

ここで実行したサンプルは、Middlegenとhbm2javaを利用して次のように変換を行っています。

(データベースのテーブル定義)-[Middlegen]->(マッピングファイル)-[hbm2java]->(Javaクラス)

日本語メッセージについて

Middlegen2.1からHibenrateプラグインで日本語が表示できるようになりました。英語と日本語の対応関係については、下記のLocalStrings?.javaをご覧下さい(文字化けする場合は、文字コードをutf-8に設定して下さい)。

参考文献


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-10-19 (火) 21:21:36 (4937d)