1

DAO-DVO 設計を実装する 2 つの方法を見てきました。

1) DVO はオブジェクトであり、DAO はファクトリを使用してインスタンス化されます。つまり、DAO もオブジェクトです。2) DVO もオブジェクトですが、この場合、DAO はタスクを実行するために DVO を受け入れる静的メソッドのみを含むクラスです。

どちらの方法がより優れており、よりスケーラブルか疑問に思っていました。

4

4 に答える 4

1

妥当性に関しては、2番目のアプローチに反対することをお勧めします。静的メソッドは、コラボレーターをモックなどでオーバーライドすることにより、クラスの動作を調整することを防ぎます。MiškoHeveryが言うように、「静的メソッドはテスト可能性の死です」。

于 2008-12-29T12:30:02.220 に答える
1

Spring フレームワークを試してください。DAO は Dependency Injection によって初期化され、単純な 'ole Java オブジェクトです。

次に、DAO のメソッドは、アプリケーションのすべてのレイヤーで使用されるドメイン オブジェクトのみを使用する必要があります。

于 2008-08-23T21:58:08.057 に答える
0

実際に物理的にレイヤー化されていない限り、それほど多くのレイヤーを使用しないことを強くお勧めします. たとえば、切り離されたオブジェクトを送信して GUI を更新する必要があるリッチ クライアントのようなものがある場合、そうでない場合は苦痛の世界です。

于 2008-08-23T21:42:57.437 に答える
0

データベース接続を作成するために DAO Factory をダウンロードする方法は?

于 2008-12-29T11:59:25.760 に答える