ORMツールを導入すると、より洗練されたアーキテクチャーになるはずですが、効率を上げるために、それを迂回して時折JDBC結果セットを繰り返していることがわかりました。これは、よりクリーンなアーキテクチャの代わりに、調整されていないアーティファクトの混乱を招く。いつORMアプローチで豚全体に行くことができますか?
これは無効なコンテキストでツールを適用しているか、それより深いですか?
いつORMアプローチで豚全体に行くことができますか?
洞察力があれば幸いです。
背景を少し:私の環境では
私は約50クライアントコンピュータと1合理的に強力なSQL Serverを持っています。
50人のクライアントすべてが常にデータにアクセスしているデスクトップアプリケーションがあります。など
プロジェクトのデータモデルは、明快など、さまざまな理由のために再編成の数を経験してきた、効率、
私のデータモデルの歴史
- JDBCは関係なしに、直接
- DAO + POJOを呼び出しますPojosの間(基本的にJDBCをラップします)。
- 遅延ロードを実装するが、ちょうど間DAOは
- はそれが(それは些細な間POJO関係を作った)データ・アクセスを作った方法「シンプル」見た後、Hibernateの時流にジャンプし呼び出す隠し、それが減少する可能性があるためのPOJOの間に追加の関係多くの関連エンティティで作業する場合のデータベースへのラウンドトリップ回数。
- それが問題
- の全体の多くが戻って私が直接JDBCは、DAOの後ろに呼び出しを行うことを可能にする部分DAO /休止状態アプローチの段付原因となってしまったので、長期的には悪夢だったオープンセッションを維持するデスクトップアプリケーションだったので、同時にHibernateを使用しながらカーテンを作成します。