数据映射器应该知道多少个数据库表?

时间:2012-03-15 16:20:22

标签: architecture datamapper separation-of-concerns

我正在为下一个项目编写数据映射器。这里的总体目标是将与数据库通话的工作与业务实体分开。因此,用户实体应该不知道它是如何构建的,或者它的值来自何处。

我的问题是......数据映射器通常知道并与多个数据库表通信,或者每个数据映射器基本上了解一个(或两个)表是否更好并且在与其他数据映射器通信时更好它需要更广泛的表格中的数据吗?

1 个答案:

答案 0 :(得分:2)

DataMappers(又名Repository模式)查看整个持久层 - 所有数据库中的所有表。这是关系数据库的情况,并为数据库连接提供了所有必要的权限。这是Repository层的重点 - 了解存储库的所有内容。

基于这个前提,DataMapper可以而且应该使用尽可能多的表来填充域对象。