首页 文章
  • 7 votes
     answers
     views

    在DDD中打包存储库及其接口

    在我工作的DDD之后的应用程序中,我们倾向于有一个服务层,其中包含服务存储库,存储库和服务的接口,它们都存在于同一个程序集中,而域模型将存在于不同的程序集中 . 在这个大项目中,感觉就像所有不适合领域模型的东西一样混乱 . 在遵循DDD原则和模式的应用程序中,如何打包存储库及其实现的接口?包装DDD应用程序的不同逻辑部分(或一般包装)的最佳实践是什么?每个逻辑分区应该都在自己的程序集中吗?它甚至重...
  • 3 votes
     answers
     views

    如何在Symfony2项目中使用Doctrine2实现DDD?

    好吧,我正在尝试将自己介绍给DDD,我对它很新,一些概念仍然不清楚 . 这是我到目前为止所理解的: 该域基本上是关于数据的 持久层不依赖于域,但业务逻辑事务可能是 . 使用Doctrine2时,我们使用EntityRepository或CustomEntityRepository实现 . 在DDD中,Repository模式看起来有点不同,我查看了.NET和Java示例以及来自DDD邮...
  • 5 votes
     answers
     views

    如何从存储库中检索域对象

    我对存储库域对象关系有一点了解 . 以下是我对域名设计所了解的一些信息(它们可能也是错误的或不准确的) . 考虑到这些,我找不到从存储库中获取域对象的方法 . 在DDD中,域名应该只知道并包含业务所需的内容,其他所有内容都必须从域中清除 . 没关系 . 而且,从任何企业抽象数据访问也是一种很好的做法 . 应用程序不需要知道我们存储数据的位置或存储数据的方式 . 我们只要求存储库给我们一个域对象,它...
  • 9 votes
     answers
     views

    DDD存储库和工厂

    在我的应用程序中有几层 . 本主题将重点介绍域和基础结构层 . 我在域层中有存储库接口ClientRepositoryInterface . 我在Infrastructure层中实现了此接口ClientRepositoryImpl . 但是为了在其存在的循环中间重构对象,我需要工厂(ReconstitutionClientFactory) . 调用工厂将在存储库中 . 埃里克埃文斯的书被描述为正常...
  • 4 votes
     answers
     views

    如何从spring数据代码中清晰地(物理地)分离域层?

    在我的DDD-by-the-book应用程序中,我在域层中有一个这样的存储库定义: public interface CustomerRepository { Customer findById(long id); ... } 数据库集成层包含此接口的实现,如下所示: public class CustomerDao implements CustomerRepository {...
  • 1 votes
     answers
     views

    在DDD中,域模型实体是否可以访问其存储库?

    我目前正在使用 Domain Driven Design 概念设计和实现框架 . 我试图将 Validation 放在域模型层中 . 有时,验证需要访问数据库并查询它,例如: "querying to check multiple column unique index" 关于这一点以及查询应该在存储库层类中编写的事实,结果是域实体需要在域模型层中引用它们的存储库接口,以便将...
  • 58 votes
     answers
     views

    Spring Data存储库是如何实际实现的?

    我已经在我的项目中使用Spring Data JPA存储库一段时间了,我知道以下几点: 在存储库接口中,我们可以添加类似 findByCustomerNameAndPhone() 的方法(假设 customerName 和 phone 是域对象中的字段) . 然后,Spring通过在运行时(在应用程序运行期间)实现上述存储库接口方法来提供实现 . 我感兴趣的是如何编码它,我看了Spri...
  • 0 votes
     answers
     views

    域服务似乎只需要在存储库中定义的总查询的一小部分 - 如何解决这个问题?

    我目前面临着关于分层和存储库的一些疑问 . 我在考虑在持久性模块中创建我的存储库 . 这些存储库将从域层模块中创建的存储库继承(或实现/扩展),保持“持久性不可知” . 问题在于,从我所能看到的,关于其存储库的域层的必要性是非常谦虚的 . 一般来说,他们倾向于CRUDish . 它通常在应用程序层级,在解决特定的业务用例时,查询往往更复杂和更人为(因此,存储库的爆炸方法的数量) . 所以这提出了如...

热门问题