【发布时间】:2010-01-07 20:30:39
【问题描述】:
背景
我正在绘制一个需要执行类似操作的应用程序
database a >--| |--> fileformat 1
database b >--+--> custom application >--+--> fileformat 2
... | | ...
database n >--| |--> fileformat n
所讨论的数据库都是相同的类型,但具有不同的表和结构。要加载的对象都是某种类型的产品。这些文件具有相似的结构但不一定相同,有些是xml,有些是csv等。
自定义应用程序可确保使用一致的界面来操作从关系数据中检索到的对象。它是一个简单的 Web 应用程序,每个产品都有几个选项和产品的分页显示。它将附加数据添加到通过 ORM 持久化的每条记录。
在应用程序的每个实例中只有一个数据库处于活动状态,但是许多文件格式可以处于活动状态。这些文件的写入是同时进行的。
问题
我一直在努力寻找设计转换步骤的最佳方法。
是否有一种模式可以设法将不同的模式组合成一个模型?这里假设只有所有数据库中存在的字段才应该最终出现在模型中。
反过来呢?何时将产品对象写入文件?
我已经研究过不同的模式,例如策略模式,但我仍然没有看到所有的点点滴滴似乎都到位的那一刻。
应用程序本身很可能是用 PHP 编写的。
【问题讨论】:
标签: design-patterns orm etl data-conversion