DDD仓储

     

今天终于在一个大型项目中运用了DDD

25 24592 20

先说说之前几次DDD项目失败的案例,其实也不能算是失败,只是没有领会DDD的思想。之前的DDD是建立在数据层之上的,首先是每张数据表对应一个数据实体,每个数据实体由泛型的DAO管理,DAO又被数据上下.

领域仓储Repository的in-memory伪真

2 2611

CQRS在设计上由于考虑到领域模型的事件原还,所以需要将大量的Event持久化到EventStore中,这样就需要与数据库打交道,对于Repository的每一个保存操作,一定会与DB有所交互,这使得.

增删改是Respository的职责,还是Entity的职责?

12 4128 3

如果要删除指定标识的实体,是由Respository来操作,还是Entity本身来操作?从业务角度来看,入库、出库都需要记录,删除操作自然应该放在Respository。可是Respository并不.

CQRS批量操作的性能问题

7 2731

假设Book是一个聚合实体,现在要删除某一个Book没有问题,通过仓储Repository加载实体,然后调用其delete方法即可,但现在问题来了,如果DB中有上万个Book需要一次性批量全部删除,那.

面向事件数据库Event Oriented Databases: 一种新的持久范式

5 5823 10
NoSQL数据库大比拼: Cassandra, HBase, MongoDB, Riak的测试结果可以得出:根据不同的应用特点选择不同的NoSQL,没有万能的NoSQL数据库。主要选择依据是读写比例,.

采用DDD开发信息发布系统(三)Repository

1663

搞了半天,我发现领域对象搞明白了,落地的时候最需要搞明白的应该是 Repository 的机制,所以又要返回来开发Repository。Repository应该包含如下的元素和方法。function .

信息发布系统的DDD的设计分析

4 1555

信息发布的DDD设计分析:需要的实体类Info 信息User 用户Approver 帖子审查员Admin 管理者PostInfoServicedeleteInfoServiceupdateInfoSe.

关于DDD的Repository仓库需要哪些方法?

1 1629

DDD的仓库我想到一下方法,还需要哪些方法呢?function Repo(){}var r = Repo.prototype;r.create = function(cb){};r.find = fu.

关于DDD学习过程中的一些疑问

12 3749 4

目前DDD关于概念,设计思想讨论了比较多。但在编码过程中还是涉及到了一些问题:实体类中如果有个值对象的列表,那我要获取这个列表应该怎么做? 如账户实体中的角色列表: List<Role> getR.

DDD仓储怎么设计

7 2077

我发现现在的设计基本是一个DAO对应一个表,这种设计好像不是很好。如何改进?.

仓储与工厂的疑问

3 1387 1

工厂是负责在内存中创建对象。仓储是类似一个集合,负责对象的保存、删除、获取。前提: 系统中的数据不需要持久化,全部在内存中。我的疑问是:1、通过工厂创建的对象实例,是否已经在系统里了? 存在:.

MongoDB 在 Spring的数据应用

1 2013 6

Getting started with MongoDB and Spring Data | Jeroen Reijn MongoDB 作为非关系数据库,和关系数据库一样,可以作为系统的Reposit.

关于Repository的唯一对象之传说

2 1565 1

传说是这样的,对象其实真实的实体存在于两个地方,一个是DB,一个是Repository的地方。但是访问这些对象的“人”,有两个目的,一个是只是看一看,就好像是没钱的男人进入迪吧(DB)一样,只能是看一.

Repository的事件驱动

3 1922 1

在零星的DDD DCI概念中,我们了解了也掌握了一些软件的控制权,同时我们还在为信息如何交流抓头,当然有很多方法,事件驱动就是一个很好的办法,同时怎么进行事件驱动呢?第一,可以用 EventBar方式.

聚合根内实体的CRUD如何处理?

1 3311 1

如题,如果是聚合根的话,CRUD是通过仓储来处理的可以理解,但是如果是被聚合的内部实体,他没有仓储,他的CRUD在何处处理呢?直接在聚合根的部位进行么?那不是就在领域层加入了持久层的操作了么?我想了一.

仓储里面的缓存多对多关系怎么设计

3 2371 2

我在仿照领域驱动设计重构了系统,当我在添加缓存功能的时候发现有点难度,希望老师指点.我举一个例子:用户--角色 多对多关系用户和角色都属于聚合根,因此应该都同时对应的repository,同样具有对应.

请教一个建模问题

4 1531 1

一个按照合同分期付款的需求,现在我自己理解的划分:实体:合同(聚合根),合同付款计划,合同付款核销记录实体:客户(聚合根)实体:付款记录(聚合根)值对象:合同状态,属于合同Service:核销问题:客.

关于值对像的,列表检索

3 1084 1

好久不见,大家还好吗?我今天又遇到一个问题,还想求教,望指点一二。现在项目组在做一个物流项目,有一个检索商品的功能,我把商品抽象成了一个实体(ITEM),它含一个叫MANUFACTURE属性,MANU.

请教banq老师一个repository的问题

12 3557 5

repository是针对聚合跟建立还是针对实体对象啊?比方说员工是聚合跟,考勤记录是员工的一个属性,是个list;我是对应聚合跟 Employeerepository我想添加一条考勤记录的话,em.

仓储上升为架构是一个难题

5 1283

复杂的sql条件是死穴,看来还是逐个定制来得方便。例如有些人获取某些超复杂条件的实体集,虽然可以用一个条件类来实现常用的条件封装,但感觉自己还是有点力不从心。有谁可以说说sql如何全面用一个类来代替呢.

把Repository上升到框架时,实体平铺遇到问题

13 1837

一旦实现平铺,那么缓存的“<唯一标识,实体>对”就不能替换实体对象了,所有修改都要基于值对象(实体状态)修改。不能替换的理由:cache是以替换对象来更新“key,value对”的,B1聚合于A1(A.

值对象持久化也用ManyToOne吗?

4 1914

我的问题是:public class SomeModel{@ManyToOnepublic Money money;}注意上面那个 @ManyToOne,请大家看一下这样合适不?Money 在这个环境.

如何写好仓储Repository?

7 5466 11 7K

How To Write A Repository仓储Repository模式已经成为最主流的模式,数据库持久化很长时间以来是一个讨论热点,目前主要问题是:主流软件并不容易有效地将需要存储的数据映射到.

关系数据库和NoSQL结合使用:MySQL + MongoDB

5 9999 11

Home Page作者使用一个案例来说明MySQL+MongoDB结合使用,发挥各自所长,并且认为他们互补性很强。当然,这其中不可避免引入DDD中的编程设计模式 Repository仓储模式,通过它能.

当DAO遇到ORM

3 2541 2

很久没有写过hibernate的代码,现在回头想重新看一下但是却有了很多新的思考,最重要的一个就是DAO对象与hibernate提供的session,在没有ORM框架的时候我们只能使用JDBC,对.

一个想法,不知能否实现。

19 4901 2

java是面向对象的, 但是现在很多的java系统全是面向过程的。为什么? 我觉得一个很重要的问题。是因为是因为我们大部分系统都是数据库系统,基本上就是crud。 这束缚了我们的思维。使我们在碰到.

启动JiveJdon的REST版以及NOSQL版探索项目

10 5242 10
开始这个项目的目的是找出我的那个小巧restful框架的不合理之处,准备深入实践运用REST,DDD,DCI,CQRS,NOSQL,EDA等思想。探索DCI是否可以植入框架,DDD中的领域模型是否可以.

Repostiory是这样用吗?

8 1594

在过去的系统中,文章评论数是一个单独的字段放在数据库中,这样看似效率变高了,不用每次都去统计评论数。但这样也出现了一致性问题。DDD是不是让我们以文章为聚合根,在ArticleRepostiory中去.

Haters Gonna Hate (Eric Evans对NoSQL的冷静看法)

1 1160 4K

Haters Gonna Hate Posted March 28, 2010 If you've been around for more than a few years, you've prob.

关于 DDD 的一些疑问

3 2051 2

请问,项目使用 DDD 方式开发的话,开发顺序是否先是 Domain Model, 然后才是 Repository, 然后调用 Dao 或者不用 Dao 也行,将对象持久化,然后再设计数据库?因为受传.