论坛首页 Java企业应用论坛

集思广益,这样的设计可行吗?

浏览 13382 次
精华帖 (0) :: 良好帖 (2) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-07-13  
通用DAO?  怎么实现得这么复杂!
我觉得就要一个DAO超类,然后针对不同的数据库进行不同的实现.里面的增删改查全部是静态的.参数是OBJECT类型,然后用反射去处理实体类和数据库字段的关系.

调用的话,就在你的service或者query层调用,然后传递实体类进去就可以了.

这样很简洁呀.
0 请登录后投票
   发表时间:2009-07-13   最后修改:2009-07-13
dizdev 写道
我觉得是一个比较好的设计,唯一的担心是,我感觉ResultBean这个模式会增加架构的复杂性和透明性。 也可能是我不喜欢不明确对象的原因。

有时候看代码,或者测试的时候,冒出来个类似ResultBean的东西,我完全不知道他是代表铅笔还是代表橡皮,或者有可能代表汽车和飞机。还是把返回Bean的操作留给IBaseDao的子Dao吧!

你说的对,实体就针对实体操作,或许这里在增加一个抽象类,专门处理返回对象的,你看这样是否会更好?不过这样又要增加三个方法了.怕方法膨胀啊!
0 请登录后投票
   发表时间:2009-07-14  
是否可以引入范型啊?如果是hibernate实现delete感觉还是直接用主键方便一点。感觉springside里这个通用设计做的就很好,建议楼主参考一下。
0 请登录后投票
   发表时间:2009-07-14  
relaxok 写道
是否可以引入范型啊?如果是hibernate实现delete感觉还是直接用主键方便一点。感觉springside里这个通用设计做的就很好,建议楼主参考一下。

谢谢,已经在看springside!
0 请登录后投票
   发表时间:2009-07-14  
应该放弃ResultBean,使用泛型。
IBaseDao接口绑定了Hibernate实现。
把Query单独分离出来真的有必要么?
0 请登录后投票
   发表时间:2009-07-14  
ldinh 写道
应该放弃ResultBean,使用泛型。
IBaseDao接口绑定了Hibernate实现。
把Query单独分离出来真的有必要么?

你应该是对的,放弃ResultBean,使用泛型!
0 请登录后投票
   发表时间:2009-07-14  
if your JDK's version is not less than 1.5+, you can try to implement a generic dao; if it is less than 1.5, your current implementation is a proper one.
0 请登录后投票
   发表时间:2009-07-15  
tibetjungle 写道
if your JDK's version is not less than 1.5+, you can try to implement a generic dao; if it is less than 1.5, your current implementation is a proper one.

First of all, thank you for your support.
Secondly, I think the development of a version for jdk is not a problem.
Therefore, generic dao benefits he may have it!
0 请登录后投票
   发表时间:2009-07-19  
这样的设计考虑过于粗糙,
1、性能问题要在设计阶段做重点考虑,例如如何批量更新、删除。

2、没有考虑异常处理

3、查询的条件居然用字符串格式的hql,基本上也不符合通用接口的写法。

当然由于设计稿没有声明设计应用范围,所以我这个建议仅供参考
0 请登录后投票
   发表时间:2009-07-24  
你应该去看那个鸭子的例子
那是大一下学期(最迟大二上学期)的孩子们应该学习的内容
---------------------------------------------
那个30年前的糖果公司案例
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics