【问题标题】:Should you be accessing another domain's repository layer in a different domain's service layer?您是否应该在不同域的服务层中访问另一个域的存储库层?
【发布时间】:2019-03-24 07:36:36
【问题描述】:

我有 2 个域,域 A 和域 B。每个域在 spring boot 项目中都有自己的控制器、服务和存储库层。让服务 A 调用存储库 B 的数据会不会出错?这会破坏任何形式的 DDD 或微服务架构吗?

【问题讨论】:

    标签: spring-boot domain-driven-design microservices


    【解决方案1】:

    当控制器绕过服务时,这个组织通常被称为宽松的分层架构,因为允许层跳过它们相邻的邻居:

    根据Clean Architecture,第34章:

    绕过业务逻辑层是不可取的,尤其是在这样的情况下 业务逻辑负责确保授权访问 个人记录,例如

    Web 控制器不应直接访问存储库

    因此,在您的情况下,Service A 应该无法直接调用Repository B 的数据。所有通信都应通过Controller B 完成。

    【讨论】:

      猜你喜欢
      • 2011-06-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-24
      • 2011-06-10
      • 2012-04-19
      • 1970-01-01
      • 2014-08-05
      相关资源
      最近更新 更多