0

I have always used the DAO pattern for CRUD operations, each DAO in charge of accessing to a unique datasource at a time, and use generics to support multiple entities.

Now I require the same with the following changes

1.- Datasources will be added/removed dynamically at runtime

2.- A unit of work involve for instance: reading from datasource A, writing on B and deleting from A if B succeded. A and B will be interchangeable, which makes me think of some sort of origin/destination mechanism.

3.- Reads will only be done against 1 datasource only

The entities will be the same in all datasource, for which I could add a factory that creates a new DAO whenever a datasource is added, answering the first question. But I'm not sure how to address the rest.

Is the DAO pattern still suitable? If it is, what needs to be added? Or is there a different approach to this as a whole?

4

2 に答える 2

1

Springがアプリケーション スタックの一部である場合は、これを使用して動的マッピングAbstractRoutingDataSourceを柔軟に追加できます。datasourceそれのソースコードを調べていない場合は、これに似た独自のロジックを構築できます。

簡単なグーグルで、私はこのhttp://blog.springsource.org/2007/01/23/dynamic-datasource-routing/に出くわしました。この動的ルーティングの動作を説明しています。

于 2012-07-06T04:20:54.237 に答える
0

これは商取引のように聞こえます。複数の DAO を含むトランザクションをカバーするビジネス コンポーネントが必要です。

于 2012-07-06T04:00:37.447 に答える