Topic: 有了 Hibernate 以后还需要 DAO 吗?

  Print this page

1.有了 Hibernate 以后还需要 DAO 吗? Copy to clipboard
Posted by: wyuanzheng
Posted on: 2003-09-21 03:28

JDO 和 Hibernate 都是用来代替 JDBC 的技术, 由于 EntityBean 的种种缺陷, 尤其是性能上和开发速度上的缺陷, 导致其他多种 Persistence 技术出现, 当然也有人说 EB 不是很 OO, 我们暂且不谈之.

我对 JDO 不是很熟, 但最近在了解一些 Hibernate 的技术. 有一些疑问, 希望得到大家的教导, Smile

DAO 是一个 Java Bean 样的 Util Helper, 更改了以后还是需要重新启动 App Server 的。我认为 DAO 的最大用处是实现跨数据库。而 Hibernate 的优点之一就是支持多种数据库. 因而, 在 Session Fecade 的情况下, 我们还有没有必要一定需要 DAO? 也就是说这个模式是否如同 Floyd 所说的, Value Object 模式在 EJB 2.X 中的非分布式环境下已经过时了?
当然, 我所讨论的结构是 SessionBean -> DAO -> JDBC -> DB, 或者 Business Delegate -> DAO -> JDBC -> DB 的情况, 直接从 Presentation Tier -> DAO -> JDBC -> DB 的架构不考虑.

多谢. Smile

2.Re:有了 Hibernate 以后还需要 DAO 吗? [Re: wyuanzheng] Copy to clipboard
Posted by: supertoy
Posted on: 2003-09-21 13:43

用DAO来封装hibernate,这样的一个好处是未来可以切换到其他o-rmapping模式。何况DAO本身并不是屏蔽数据库,而是数据源,这个有很大不同的

3.Re:有了 Hibernate 以后还需要 DAO 吗? [Re: supertoy] Copy to clipboard
Posted by: wyuanzheng
Posted on: 2003-09-21 23:41

supertoy wrote:
用DAO来封装hibernate,这样的一个好处是未来可以切换到其他o-rmapping模式。


这个理由我喜欢。Smile

4.Re:有了 Hibernate 以后还需要 DAO 吗? [Re: wyuanzheng] Copy to clipboard
Posted by: yiw16
Posted on: 2003-09-25 18:51

JBOSS已经采用Hibernate作为对象/RDB影射和持久化技术了

5.Re:有了 Hibernate 以后还需要 DAO 吗? [Re: wyuanzheng] Copy to clipboard
Posted by: hitaco
Posted on: 2003-10-15 16:13

当你做了非OO的项目,比如系统用store procedure返回多张表的数据,就会发现OO的persistence framework一点用处也没有了


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923