数据源设计模式(数据映射器)和注册表Vs. IdentityMaps

时间:2013-12-11 05:27:22

标签: design-patterns

所以我正在学习数据源设计模式,我想知道两件事:

1- Registry和IdentityMap有什么区别?

2-使用数据映射器时,应放置(Registry或IdentityMap)的位置?新包?,DomainLogic包?还是Mapper包?

由于

1 个答案:

答案 0 :(得分:1)

根据我的理解,RegistryIdentity Map模式之间的主要区别在于Identity Map的主要职责是确保可识别对象仅加载一次。因此,如果您的客户ID为1,并且不同的呼叫者要求客户1,则身份映射将确保他们都将收到相同的对象引用。它可以防止并发问题。根据我的经验,注册表用于集中和控制对服务的访问。

对我来说,Identity Map是映射层/包/上下文的一部分。因此我非常接近我的地图制作者。实际上,每个映射器都希望为给定的会话/上下文共享相同的身份映射。