关于Repository模式

Repository模式:

网上说Repository是一个独立的层,介于领域层与数据映射层(数据访问层)之间。它的存在让领域层感觉不到数据访问层的存在,它提供一个类似集合的接口提供给领域层进行领域对象的访问。Repository是仓库管理员,领域层需要什么东西只需告诉仓库管理员,由仓库管理员把东西拿给它,并不需要知道东西实际放在哪。

 

使用该模式的最大好处就是将领域模型从客户代码和数据映射层之间解耦出来。 

其实我们可以把它理解为DAL层,但又与DAL层有一定的区别,Repository是DDD中的概念,强调Repository是受Domain驱动的,Repository中定义的功能要体现Domain的意图和约束,而DAL层更纯粹的就是提供数据访问的功能,并不严格受限于Business层。

 

使用Repository,隐含着一种意图倾向,就是 Domain需要什么我才提供什么,不该提供的功能就不要提供,一切都是以Domain的需求为核心;而使用DAL,其意图倾向在于我DAL层能使用的数据库访问操作提供给Business层,你Business要用哪个自己选。换一个Business也可以用我这个DAL,一切是以我DAL能提供什么操作为核心

 

这里再简单说说Core里的Service文件,它相对Repository是处理一些复杂一点的业务逻辑,而Repository所提供的功能是相对比较单一的,比如添加用户,Repository就是操作数据库保存操作,而Service则会先进行一系列的逻辑判断,是否存在该用户的,再调用Repository里的保存用户操作。


转自:http://xdwangiflytek.iteye.com/blog/1395698

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值