Repository和dao

Repository是对象的仓库,也就是保存对象的地方,这个仓库就是我们普通意义的仓库,一个真正OO系统,业务层是围绕活动的对象进行,活动的对象是从仓库中获取的,也是通过交给仓库进行对象长久保管,也就是持久化意思,说白了,就是保存到数据库。



而DAO则没有如此OO概念,DAO是Data access Object,DAO中有数据概念,还是没有摆脱数据库的影子。



所以,Repository替代DAO,是OO深入的趋势,但是在具体处理中,由于性能或设计不够周到或者一些事情把握不定,DAO还会继续存在一段时间,属于过渡式消失。



Repository和DAO两个概念比较中发现,Repository是相对对象而言,而DAO是相对数据库而言,只要我们还是使用关系数据库保存对象,也可能这两者都同时存在,因为侧重点不一样,但是可以肯定的是,业务层应该直接和Repository打交道,而不是DAO.
咬文嚼字的话

DAO是对象访问接口类

接口类=方法的管理类

就是操作数据库的具体方法的类

User

UserDAOImpl 就是管理怎么把User对象存进取出数据库的具体方法的类

repository是对象仓库类

仓库类=对象的管理类

User

UserRepository 就是管理怎么样才能有效的访问User类的类

UserRepository在必要的时候才调用UserDAOImpl去操作数据库

你也可以吧UserRepository理解为UserCache,当然Repository不仅仅是cache的功能

 

转载于:https://my.oschina.net/u/3668429/blog/3020443

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值