まとめAndroMDA→Hibernateを整理
- モデルを書く。注意しなければならないのは多重度とロール。全て書くこと
- 関連の方向に注意、こればっかりは使うときを考えて線を引かなければならない
- Poseisonは描画ツールとしては致命的に弱い。今回はEAで書いてXMI1.2を経由してPoaseidonで改めてzuml形式で保存(余談だが、zumlは要するにxmiのzip圧縮なので手動でもなんとかなる予感)
- AndroMDAを実行する。デフォルトだとなぜかHibernateのつもりなのにEJBが混じるのでbuild.xmlからいくつかtaskを削除
- どうせコンパイルが通るものは出てこないので手動で修正。
- 出力されたファイルのうち、重要なのはhbm.xmlとモデルの.javaファイル。これを実地のソースディレクトリにコピー
- .javaファイルの修正
- エンティティクラスがAbstractになってしまっている。今回は不要なので戻す
- 一部Dateの変換がうまくいかないのでimport編成で修正
- 生成するHibernateタグのうちPrimaryKeyは自動でuuid.hexになる。しかし、これは文字列なのでこれをhiloなどに直す(エンティティ全て)
- 生成されるテーブル名に「HIB_」がつく。いらんので消す
- getter、setterの近くにフィールド宣言がある。読みにくいので先頭に移す(好みの問題だが)
- .hbm.xmlファイルの修正
- 同様にテーブル名から「HIB_」を取る
- 同様にPrimaryKeyを「hilo」に直す
- DTDのバージョンを1.1から2.0にあげる(これで連鎖的に修正あり)
- 改行がキモいのでフォーマットする
- Date宣言がヘンなので直す
- ここまでできたらHibernatorを利用してスキーマを作成する。
あとはテストしてみて、うまくいったら帰るだけ。