BlogJava 联系 聚合 管理  

Blog Stats

文章档案


zhuyq521

temp

DAO

各位:

         这两天我在做代码走查,发现有些同志还在写DAO,觉得非常没有必要。

先说说DAO的来源,在远古时代(2-3年前),Session Bean大行其道的时候,数据组装是一个很大的问题,因为大家都在用实体BeanVO,如果让数据组装逻辑弥散到业务逻辑层,会使业务逻辑层变得非常fat,巨fat,大家可以看看我们写的TopTais2版软件,虽然它没有使用实体Bean,其中大量的使用到了实体转换的getset。时代变化了,思路变化了,我们Spring了,彻底的HB了,我们的实体既是POpersistent object,由HB帮我们装载的),又是VOvalue object,当HBSession断开之后,这个PO实体对象就是一个经过HB增强过的VO了),更加是DTOData Transfer Object,数据传输对象,可以远程传递的数据对象,必须实现序列化接口,是远古时代的定义),因此我们没有实体转换。

我们是有层次的,ViewProcessDomain,就算是有实体转换,我们也是在Domain层中完成转换,而且Domain层就是干这个活的,领域么,如果谁不知道领域模型是干什么的,请在google上查找DDD这本书——领域驱动开发。

编程实现上,我们都Spring了,继承了HibernateTemplate了,DAO层里面剩下了什么呢?就剩下一行程序了。

程序复用上是不是有存在的理由呢?上面说到了,都Spring了,服用一个SpringAPI和复用自己的API有区别么?

 

啰嗦了半天,起始就是想从多个方面说明一点,DAO无用了,大家就别套用老旧的模式了。

posted on 2010-02-24 16:21 zhuyq 阅读(43) 评论(0)  编辑  收藏