第一次见到这么好的见解。太好了。以后应该常来啊。

Repository和数据访问层有什么区别呢??
看不出来,都是根据条件获取实体或者实体集合???
我觉得就是名字问题,没有本质变化。

DAO就是个数据访问,将数据库的table数据,映射为实体,或者实体集合

service是粗粒度的业务暴露,领域是细粒度的业务暴露,service不是必须的,可以直接调用领域对象,完成业务操作。

有时候为了减少交互,减少传递,建立一个service,包装领域对象,对外暴露粗粒度的业务操作。