[Seasar-user:2529] Re: S2Daoの機能仕様について

Ota Wataru ota
2005年 8月 24日 (水) 15:21:54 JST


Otaです

現在のS2Daoにはキャッシュ、遅延ロード、関連データ取得制限の
機能はありません。
キャッシュに関してはひがさんが意図しない挙動やバグの発生に
つながり扱いが難しいため、餅は餅屋のスタンスでDBのバッファ
に頼ってS2Daoには用意しないとのコメントがあったように記憶
しています。

遅延ロード、関連データ取得制限に関しては他のORMフレームワーク
との設計思想の違いで、業務処理・画面に必要なデータを処理ごとに
ステートレスなDAO内でテーブル→DTO、DTO→テーブルへ効率よく
変換する事に主眼がおかれデータモデリングの結果導かれたEntityを
DBに永続化&復元する設計は対象としていないと理解しています。

ですので複雑なオブジェクトグラフを扱う制約を緩和するための
lazyLoad、inverse、cascadeなどの機能も存在しません。

私は、OOA寄りなアプローチかDOA寄りなアプローチの違いで
どちらが良いかはケースバイケースと考えS2DaoとS2Hibernateを
使い分けています。

また、キャッシュに関してはカタログ系の更新頻度が多くない
アプリの場合Viewレイヤでキャッシュコンポーネントを使って
同等の効果が出せると思いますのでキャッシュが無いから
S2Daoが使い難いというケースはあまりないのではと思います。




Seasar-user メーリングリストの案内