所以我正在学习数据源设计模式,我想知道两件事:
1- Registry和IdentityMap有什么区别?
2-使用数据映射器时,应放置(Registry或IdentityMap)的位置?新包?,DomainLogic包?还是Mapper包?
由于
答案 0 :(得分:1)
根据我的理解,Registry和Identity Map模式之间的主要区别在于Identity Map的主要职责是确保可识别对象仅加载一次。因此,如果您的客户ID为1,并且不同的呼叫者要求客户1,则身份映射将确保他们都将收到相同的对象引用。它可以防止并发问题。根据我的经验,注册表用于集中和控制对服务的访问。
对我来说,Identity Map是映射层/包/上下文的一部分。因此我非常接近我的地图制作者。实际上,每个映射器都希望为给定的会话/上下文共享相同的身份映射。