用了Hibernate是否就不需要DAO?

power1128
07-12-11 4 326

我也是刚开始使用Hibernate,在应用的过程中,我觉得Hibernate的Session就是持久层的facade.那么我们就不用再写DAO了,不知道我的理解正确否?

hiworld
2007-12-25 12:40

我对DAO的理解就是DAO是的作用是为了解耦,持久化方式不是hibernate一种,如果改用其它的持久化方式,如EJB.那么不写DAO的话,那么业务层就必需修改.而用DAO的话,只要保证接口不要,改变DAO的实现DAOImpl,上层业务调用的接口就不会变.从而解耦业务层和持久层.

power1128
2007-12-26 09:13

hiworld 兄说的我很同意.通过这些天的实践,我也发现Hibernate只是DAO的一种实现,DAO使得持久层的实现灵活,是需要的.多谢hiworld兄的解答

bonepole
2007-12-26 17:09

DAO和HIbernate没什么关系吧,一个是持久层上的实现技术,一个是设计上的问题

power1128
2008-01-02 12:31

是我理解的有问题,使用Hibernate和是否用DAO没有什么关系,就像楼上说的一样。多谢各位的解答