データベース・リファクタリングがアツい件
S2JDBC
最近動きが激しいですねー。タイプセーフを取るか見やすさを取るかは難しいところですが、タイプセーフのほうを推奨されているようです。Ruby on Rails の ActiveRecord の場合はモデルのプロパティーはコード上に存在せず、実行時にしか存在しない(というか find 系メソッドさえも実行時にしか存在しない)ので見た目がすっきりしているのですが、やはり Java ではタイプセーフを前面に押し出すような感じでしょうか。
これまでのS2JDBCだとこんな感じ。
jdbcManager.from(Model.class) .where("name.firstName like ?", "Yu%") .getResultList()S2JDBCのタイプセーフな書き方だととこうなります。
select() .where(starts(name().firstName(), "Yu")) .getResultList()
タイプセーフなデータベースプログラミング - yvsu pron. yas
S2JDBC
http://s2container.seasar.org/2.4/ja/s2jdbc.html
S2JDBC-Gen
http://s2container.seasar.org/2.4/ja/s2jdbc_gen/index.html
Jiemamy
こっちはリファクタリングを前提としたデータベース・モデリング Eclipse プラグイン。機能は ER 図作成、DB 反映、DDL/データ作成、Java クラス作成、仕様書作成、Maven2 プラグインなど多岐にわたります。似たプラグインとして AmaterasERD などがあります。
Jiemamy
http://sites.google.com/a/jiemamy.org/jiemamy/Home/howtoeclipse
@IT データベースもアジャイル開発に対応したい! (上の画像はここの)
http://www.atmarkit.co.jp/fdb/single/08s_jiemamy/jiemamy1.html
S2JDBC-Gen も Jiemamy もリファクタリングやバージョン管理を重視しているのが共通していますね。