什么是聚合根?

2023-12-09

我正在尝试了解如何正确使用存储库模式。聚合根的核心概念不断出现。当在网络和 Stack Overflow 上搜索有关什么是聚合根的帮助时,我不断找到有关它们的讨论以及指向应该包含基本定义的页面的死链接。

在存储库模式的上下文中,什么是聚合根?


在存储库模式的上下文中,聚合根是客户端代码从存储库加载的唯一对象。

存储库封装了对子对象的访问 - 从调用者的角度来看,它会自动加载它们,无论是在加载根的同时还是在实际需要它们时(与延迟加载一样)。

例如,您可能有一个Order封装了多个操作的对象LineItem对象。您的客户端代码永远不会加载LineItem直接对象,只是Order包含它们,这将是您的域的该部分的聚合根。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是聚合根? 的相关文章

  • C# 数据库包装设计

    我正在为 C 设计一个数据库包装器 以下是我有两个选择 选项A class DBWrapper IDisposable private SqlConnection sqlConn public DBWrapper sqlConn new S
  • NSubstitute 不匹配 Linq 表达式

    我正在实现一个存储库模式查询类并使用 NSubstitute 进行测试 存储库接口 public interface IMyRepository IQueryable
  • 实体框架的状态模式

    我有一个模型Enquiry 它可以处于两种状态之一 还有更多状态 但出于此目的 我将仅比较两种状态 New and Closed 查询所处的状态取决于用户能够对查询执行什么操作 例如 无法删除已关闭的查询 而可以删除新的查询等等 基本示例
  • 除了“真实”对象之外,DDD 存储库还可以使用摘要对象吗?

    假设我正在创建一个存储库来存储数字电子书 如下面的界面所示 该存储库将存储书籍的实际文本以及标识书籍的元数据 标题 作者 出版商 ISBN 等 public interface IBookRepository void AddBook Bo
  • C# 带有泛型的异常继承语法

    我在 NHibernate 类定义中偶然发现了这一点 public class SQLiteConfiguration PersistenceConfiguration
  • 使用“旧”对象引用使用构建器模式创建新对象

    我正在尝试构建器模式 并陷入如何向新创建的对象添加新 属性 的困境 public class MsProjectTaskData private boolean isAlreadyTransfered private String req
  • 您知道 PAC 设计模式的任何示例吗?

    任何人都可以指出正在使用的任何网站或网络应用程序表现 抽象 控制 http www dossier andreas net software architecture pac html设计模式而不是MVC 像这样的桌面应用程序很容易找到 例
  • STL(标准模板库)中使用的设计模式

    我正在学习STL和设计模式 我想知道是否有任何文档或链接可以解释如何在 STL 中实现设计模式 我做了谷歌但无法获得太多数据 我希望你的意思是 哪些设计模式可以在STL中识别 STL 堆栈是一个容器适配器 适配器是一种设计模式 迭代器也是一
  • 与竞争的消费者顺序处理消息

    Problem 我以特定顺序 FIFO 在队列上接收消息 比如订单 我的队列中有竞争的消费者 为了进一步增加复杂性 消费者可能只对订单的特定版本感兴趣 具体取决于其状态 例如版本 1 版本 2 和版本 5 订单版本号在订单上可用 但不能用于
  • C 中的 N 依赖注入 - 比链接器定义的数组更好的方法?

    Given a 库模块 在下文中称为Runner 它作为可重复使用的组件 无需重新编译 即静态链接库 中应用程序分区架构的 而不是主分区 请注意 它仅包含main 出于演示目的 Given a set 顺序无关 调用的其他模块 对象Call
  • 如何简化 ASP.NET MVC 中的全状态交错模式对话框

    我需要在多对多模式对话框中保留状态渐进增强 http en wikipedia org wiki Progressive enhancementASP NET MVC 项目中的方式 在我的代码中 当禁用 javascript 时 模式对话框
  • JavaScript 中的单例模式

    下面是 JavaScript Singleton 模式的一个非常流行的实现示例 var mySingleton function var instance function init function privateMethod conso
  • Java中单例的其他方式[重复]

    这个问题在这里已经有答案了 只是我在考虑编写单例类的其他方法 那么这个类是否被认为是单例类呢 public class MyClass static Myclass myclass static myclass new MyClass pr
  • 如何使用 Spring Crud/Jpa Repository 实现 DDD

    我想通过使用 Spring 实现 DDD 来创建一个应用程序 假设我有一个业务实体 Customer 和一个接口 CustomerRepository 由于春天提供了CrudRepository and JpaRepository默认情况下
  • 处理大数据二进制文件

    我正在处理包含原始数据的大型二进制文件 每个大约 2 GB 这些文件具有明确定义的结构 其中每个文件都是一个数组events 每个事件都是一个数组data banks Each event and data bank有一个结构 header
  • python 中的代表

    我实现了这个简短的示例来尝试演示一个简单的委托模式 我的问题是 这看起来我已经理解了委托吗 class Handler def init self parent None self parent parent def Handle self
  • 进度状态报告模式

    我正在实现需要显示进程栏 或进度百分比 的长时间运行的进程 长时间运行的过程的整体逻辑很复杂 各种分页数据检索 因此 我最终在代码中的不同位置硬编码了大量百分比 在更新完成百分比时 什么被认为是最佳设计模式 我发现 JFace 周围使用的模
  • 是检测异常并抛出它们还是让运行时抛出它们更好?

    假设有这样的设置 public class MyClass public void DoSomething string Data if String IsNullOrWhiteSpace Data throw new NullRefere
  • 使用 SOA、UoW、Repository、DataContext 和多个数据库设计多租户应用程序

    首先 我对这篇文章的篇幅表示歉意 但我想提供尽可能多的细节 以增加得到答案的机会 提前致谢 我正在向集成来自多个数据库的数据的现有应用程序添加新功能 简而言之 它允许客户和 或其会计师访问和更新有关其位置的财务信息 该应用程序有 3 层 其
  • 如何在NodeJs中应用Java/Spring的分层架构?

    我已经尝试学习 NodeJS 有一段时间了 所有书籍和教程似乎都遵循类似的代码结构模式 例子 const express require express const app express app set view engine hbs a

随机推荐

  • 如何在 JavaScript 中对字符串进行排序

    我有一个对象列表 我希望根据字段进行排序attr字符串类型 我尝试使用 list sort function a b return a attr b attr 但发现 似乎不适用于 JavaScript 中的字符串 如何根据字符串类型的属性
  • 出现错误时如何退出 rpm 安装

    我正在寻找一种在某些条件不成立时退出 rpm 安装的方法 我在 pre 部分添加了一个小脚本 如果我的条件失败 该脚本将退出安装 我面临的问题是我看到 pre scriptlet 被执行 并且 rpm 安装失败 然而最后我得到了我不想要的这
  • 将函数形式从代码作为字符串应用/映射到新函数体中

    我想获取用户的代码并进行转换reactive 调用这样的函数 a lt reactive input n 100 并将其转换为 a lt function input n 100 这是我的一部分闪亮的物体包裹 我已经整理了一个解决方案 但我
  • 如何在 PropertyGrid 中重新标记模式 UITypeEditor 的省略号按钮?

    我有一个 Windows 窗体 PropertyGrid 和一个客户 UITypeEditorhttp msdn microsoft com en us library system drawing design uitypeeditore
  • PHP 的问题包括区分大小写的文件系统

    我在 Windows 中构建了一个 PHP 项目 正如你所知 在 Windows 中 fun php 和 Fun php 是相同的 但在 Linux 中不同 Q1 gt 由于我的项目将在 Linux 中运行 如何解决这个问题 文件名错误 Q
  • C语言中反斜杠的用法

    在C语言中 如果反斜杠后面没有任何内容 它会起作用吗 我在 case a 的分隔符后添加了 但它对任何事情都没有影响 那么这里的 有什么作用呢 include
  • Firebase 身份验证失败,并显示 auth/network-request-failed 网络错误(例如超时

    我在尝试进行 Firebase 身份验证时遇到了非常奇怪的行为 更重要的是 我制作了一个可以运行的版本和一个不能运行的版本 首先 有效的版本
  • IntelliJ 集成 Play 2 应用程序抛出库“scala-2.10.0-RC1 未使用”

    我刚刚生成了一个新的 Play 应用程序 版本 2 1 RC1 这包括两个 Scala 编译器 库对 斯卡拉2 9 2 斯卡拉 2 10 0 RC1 整个过程可以在 IntelliJ IDEA 12 中编译 但是warning如图所示 看来
  • Meteor - 插入失败:找不到方法

    我的 Meteor 的 JS 文件有问题 当我尝试将任何数据插入数据库并反映在图表上时 出现此错误 插入失败 找不到方法 我尝试过直接从数据库获取数据 但也不起作用 提前致谢 LinePeople new Mongo Collection
  • 将网络位置保存为 .txt 文件(不使用 GPS)

    我是android编程的初学者 我的研究生项目是关于跟踪移动设备 我需要代码将位置 不使用 GPS 保存为文本文件 有人建议我执行此操作的代码 这对我来说会有很大的帮助 尝试这个 locationManagerNetwork Locatio
  • 我可以在没有 Google Apps 脚本的情况下在 Google 电子表格上创建自定义函数吗?

    我正在使用带有 Google Apps 脚本的 google 电子表格 但它很容易给我错误信息 像这样 Error此 Google 用户帐户每秒调用脚本的次数过多 第 0 行 有什么办法可以避免该错误吗 reduce函数调用方式除外 或者支
  • 密码的javascript正则表达式至少包含8个字符,1个数字,1个大写字母和1个小写字母[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个正则表达式来验证密码 该密码必须满足以下条件 至少包含8个字符 至少包含 1 个数字 至少包含 1 个小写字符 a z 至少包含 1 个大写字符 A Z 仅包含 0 9a zA Z 我尝试了以下
  • SQL Server 中的更新顺序

    创建脚本 CREATE TABLE dbo tblTEST AccountNO varchar 10 NOT NULL Serial int NOT NULL AccountType varchar 1 NOT NULL Due money
  • 使用 WMI 监控驱动器

    我正在尝试监控本地电脑的驱动器 我对两个事件感兴趣 驱动器连接 USB 驱动器 CD ROM 网络驱动器等 和断开连接时 我使用 ManagementOperationObserver 编写了一个快速概念证明 它部分有效 现在 使用下面的代
  • 立方体纹理问题

    我试图制作一个每个面上都有不同纹理的立方体 我现在正面和背面都可以工作 现在我正在尝试制作立方体的右面 但出了问题 因为我完成了正确的脸 但纹理显示错误 就像拉伸和切碎 我的代码中有一些不好的东西 我不知道是什么 这是我的代码 public
  • 从图库中随机查找一张图片

    我正在开发一个需要获取随机图片来自 Android 设备上的图库 问题是我只能找到与图库交互的方法 允许用户选择他们想要的图片 有人知道我应该做什么才能使这项工作成功吗 Java 代码会很有帮助 我可能会用this方法 然后将 ID 放入数
  • 在 .NET 6 Minimal API 中使用 IEnumerable<> 和 IFormFileCollection

    问题是 我有一个从 URL 连接 pdf 的 API 它在 NET 5 中工作 但是当开始迁移到 NET 6 时 使用 IEnumerable IFormFile 和 IFormFileCollection 只接受请求 applicatio
  • 在 Qt C++ 中的自定义项目委托上绘制文本时的性能问题

    Goal 创建一个项目委托 其中包含要使用的自定义文本内容QListView Problem 绘制文本QPainter在重新实施paint 的方法QAbstractItemDelegate的子类明显比绘制形状和像素图慢 将基类更改为QSty
  • 将数据数组渲染为分页组件

    我是 React 新手 所以如果我的术语有误 请原谅我 我想创建一种对组件数组进行分页的方法 为此 我已按每页所需的项目数量对数组进行了切片 并将每个页面存储到一个数组中 例如 const limit 4 const numPages 20
  • 什么是聚合根?

    我正在尝试了解如何正确使用存储库模式 聚合根的核心概念不断出现 当在网络和 Stack Overflow 上搜索有关什么是聚合根的帮助时 我不断找到有关它们的讨论以及指向应该包含基本定义的页面的死链接 在存储库模式的上下文中 什么是聚合根