2010-11-26 65 views
1

我已經完成了幾個類似的集成。一方面,我從一個系統的數據庫獲取產品數據,格式化產品數據以與另一個系統數據庫一起使用,然後將這些產品導入該系統。另一方面,我從一個系統數據庫中提取用戶,格式化他們,然後導入另一個系統。似乎會有這樣的設計模式,如果有的話是什麼?查找設計模式

+1

不知道我是否會稱這是一種設計模式。 「Clean,Conform,Deliver」CCD或「Extract,Transform,Load」ETL是我將使用的術語。 – 2010-11-26 04:25:21

回答

2

我可以想象兩種設計模式 這個senerio。

適配器模式: 如果你想有一個辦法通迅

原因:你有兩個系統System1DB System2DB和 只有單向通信

  Your Adapter 
Sytem1DB --------------> System2DB 

調解模式: 如果你想有雙向 通信在homogenius系統

  Your Mediator 
Sytem1DB <----------------> System2DB 
0

您可以在建築產品清單和用戶清單中使用工廠模式。

0

對我而言,您正在談論從一個數據庫到另一個數據庫的數據轉換。

驅動程序設計模式始終用於從數據庫實現中抽象出程序。

然後,你有你的「轉換管道」:一個orientend轉換圖。這主要是你可以用通用編程做的事情。每個轉換都會等待IN_T類型的輸入數據,並將其轉換爲類型爲OUT_T的可能不同的輸出。

因此,可以通過訪問者設計模式來訪問您的圖來執行轉換;修飾器設計模式來改變圖形節點的屬性;國家設計模式來表達轉型的狀態; Listener設計模式給出了轉換進度的更新;等