Java⇔RDBのMapping-Frameworkを語るスレ
で、俺がTorqueの出来が悪いと思っているのは以下の点。
ただ、去年検証してダメ出ししたっきりなんで、間違ってる点や
既に解決している部分もあると思う。それらについては指摘しておくれ。
OUTER JOINがサポートされていない。
JTAに対応してないみたい。
オブジェクトを更新した際、明示的にsave()メソッドを呼ぶか
PeerクラスのdoUpdate()メソッドを呼ぶ必要がある。
→透過的じゃないやん
あらかじめ設定したJDBCコネクションしか使わせられない。
自動生成されるクラスが多すぎる。
クラスFooに対して、FooPeer、BaseFoo、BaseFooPeerって…。
クラスを自動生成する都合上、BaseFooが出来るのまではわかるが。
オブジェクトを1つだけ取得したい場合でもBasePeer.doSelect()に
Criteriaを渡して、結果をリストで取得しなければならない。
これじゃダサすぎ。
List result = FooPeer.doSelect(criteria);
Foo foo = (Foo)result.get(0);
(続く)
(続き)
Eclipse用プラグインが無い。
XDocletがTorqueだけサポートしていない(HibernateとCastorは
サポート済)。いちいちマッピングを手書きするのは面倒です。
足周りのVillageがさっぱりメンテされていない。
なんとなく不安。
プロジェクトに組み込む際に必要な下準備が多すぎる。
Hibernateだったら、データクラス毎に*.hbm.xmlを用意して
hibernate.propertiesをクラスパスに置けばOK。
まあ、上記の3つはどうでもいいような気もするが。