我在PHP中写一个数据映射器, 并试图研究如何执行身份地图, 当我的域目标跟随分类表继承时, 如何执行身份地图 。
我认为,问题在于,身份地图不能保证数据在模拟模型中只显示一次,因为等级物体依赖于等级数据。
例如,在我的数据库中,我有一个家长表和一个孩子表。在我的域名模型中,我有一个家长类,从中延伸了一个孩子类。我可以即时地将一个父母对象和一个孩子对象记录在身份地图上,没有问题。如果客户代码要求同一位父母或孩子,我可以从我的缓存中归还它,而不是数据库,没有问题。
但是,如果父母和子女都与同一父母记录有关呢?即父母表中的数据相同呢?我现在有该数据在模拟中两次表示,如果在一次(或两次)中修改过,我冒着承担这些修改的风险。
在我看来,身份地图似乎需要遵循类似于“域目标”和“映像师”本身的等级体系,然而在这一点上却变得有点复杂。 另外,我还有很多附属地图需要考虑。
任何想法/建议都非常感激!