Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 数据源设计模式(数据映射器)和注册表与标识映射_Design Patterns - Fatal编程技术网

Design patterns 数据源设计模式(数据映射器)和注册表与标识映射

Design patterns 数据源设计模式(数据映射器)和注册表与标识映射,design-patterns,Design Patterns,因此,我正在学习数据源设计模式,我想知道两件事: 1-注册表和IdentityMap之间有什么区别 2-使用数据映射器时,(注册表或标识映射)应放在何处?新软件包?,域逻辑软件包?还是Mapper包 感谢据我所知,和模式之间的关键区别在于身份映射的主要职责是确保可识别对象只加载一次。因此,如果您有一个id为1的客户,并且不同的呼叫者请求客户1,那么标识映射将确保他们都接收相同的对象引用。它可以防止并发问题。根据我的经验,注册中心用于集中和控制对服务的访问 对我来说,身份映射在很大程度上是映射层/

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

1-注册表和IdentityMap之间有什么区别

2-使用数据映射器时,(注册表或标识映射)应放在何处?新软件包?,域逻辑软件包?还是Mapper包


感谢

据我所知,和模式之间的关键区别在于身份映射的主要职责是确保可识别对象只加载一次。因此,如果您有一个id为1的客户,并且不同的呼叫者请求客户1,那么标识映射将确保他们都接收相同的对象引用。它可以防止并发问题。根据我的经验,注册中心用于集中和控制对服务的访问


对我来说,身份映射在很大程度上是映射层/包/上下文的一部分。因此,我把它放在我的地图绘制者旁边。实际上,每个映射者都希望在给定会话/上下文中共享相同的标识映射。

据我所知,和模式之间的关键区别在于标识映射的主要职责是确保仅加载一次可标识对象。因此,如果您有一个id为1的客户,并且不同的呼叫者请求客户1,那么标识映射将确保他们都接收相同的对象引用。它可以防止并发问题。根据我的经验,注册中心用于集中和控制对服务的访问

对我来说,身份映射在很大程度上是映射层/包/上下文的一部分。因此,我把它放在我的地图绘制者旁边。实际上,每个映射者都希望为给定会话/上下文共享相同的身份映射