HibernateプロジェクトでもDBFlute

@DBFlute, Java, Hibernate
実は、短期間ですがHibernateを使ったプロジェクトに入ってます。
Hibernateはどうなの?っていう話はここではしません。
とても有意義だったのが、HibernateプロジェクトでもDBFluteが
採用されたということです。
どういうことかというと、

DBFlute:
 DB構築・テストデータ登録・テーブル定義生成・区分値ENUM生成

Hibernate:
 O/Rマッパ

つまりは、DBFluteのReplaceSchemaとSchemaHTMLとENUM(CDef)生成だけ
を利用して、Hibernateのプロジェクトで共存しているのです。
これは新しい。新鮮ですね。

特にReplaceSchemaはとても好評です。
完全に他のO/Rマッパと共存できる機能なため導入も実は問題ありません。
テストデータをあらかじめ一通りのパターンのものを作成して、
ReplaceSchemaで登録しておいてJUnitで利用する、というやり方も
とてもテストがしやすくなったという声を頂きました。
take-finallyでデータのチェックをしたりも渋く好評です。

SchemaHTMLも開発者の必須のアイテムとなっています。
ERDツールでDBAが記述したそれぞれのカラムのコメントが
一覧で表示されますし、区分値もこれがそのままドキュメントです。
HQLの記述部分がタイプセーフでないので、プロパティ名を
コピーするのにも頻繁に利用されます。
とまあ、こういった組み合わせもできるんだ(実際にやってる)、
ということの情報共有です。

HibernateのEntityの自動生成はちょっと別の独自のツールで
やっているので、Entityが区分値ENUMと連携したりとかはないのですが、
将来的にはHibernateのEntityもDBFluteで自動生成して、
http://d.hatena.ne.jp/jflute/20090703/1246549011
で書いてあるような区分値メソッドがHibernateでも利用できるように
なってもいいかなぁとおもったり。
Entityも自動生成できたほうがよりHibernateプロジェクトに
DBFluteを導入しやすいかもしれませんね。