设计模式
吴家二少
我希望自己能不再急躁,无论何时能安静的面对!解决,我喜欢一个人的疯狂,旅游。同时交一些交心的朋友!
展开
-
DAO 中的异常处理
项目开发宝典>> 中的留言板小例子我还学到了DAO 中的异常处理,如何使DAO 更容易使用、更健壮及更易于维护,在实现 DAO 模式的异常处理时,一般我们都会考虑下面的问题: 1 DAO 的公共接口中的方法是否抛出检查过的异常?如果是的话,抛出何种检查过的异常? 2 在 DAO 实现类中如何处理异常? 在网上曾看到过一篇文章说,遵从以下这些原则可以极大地改进原创 2008-12-04 23:03:00 · 606 阅读 · 0 评论 -
DAO模式的介绍
业务对象只应该关注业务逻辑,不应该关心数据存取的细节。数据访问对象必须实现特定的持久化策略(如,基于JDBC或Hibernate的持久化逻辑), 这样就抽出来了DAO层,作为数据源层,而之上的Domain Model层与之通讯而已,如果将那些实现了数据访问操作的所有细节都放入高层Domain model(领域模型)的话,系统的结构一定层次上来说就变得有些混乱。低级别的数据访问逻辑与高级别的业务逻原创 2008-12-04 22:47:00 · 592 阅读 · 0 评论 -
设计DAO要注意的问题
在采用这种工厂方法设计模式来实现时我们其实要注意很多问题,哪个对象负责开始事务,哪个负责事务结束?DAO 是否要负责事务的开始和结束? 应用程序是否需要通过多少个DAO访问数据?事务涉及一个DAO还是多个DAO?一个DAO是否调用另一个DAO的方法?了解上述问题的答案将有助于我们 选择最适合的 DAO 的事务界定策略。在 DAO 中有两种主要的界定事务的策略。一种方式是让 DAO 负责界定事原创 2008-12-04 22:50:00 · 610 阅读 · 0 评论 -
DAO的实现
DAO 模式对开发J2EE应用的人员来说都应该很熟悉的,但是模式的实现各不相同,在这里我将按下面的思路来实现:1.系统中的所有数据库访问都通过 DAO 进行以实现封装。2.每个 DAO 实例负责一个主要域对象或实体。 3.DAO 负责域对象的创建、读取(按主键)、更新和删除(CRUD)。4.DAO 可允许基于除主键之外的标准进行查询,返回值通常是DAO 负责的域对象原创 2008-12-04 22:52:00 · 912 阅读 · 0 评论 -
DAO 设计模式 事务界定
前面说过, DAO 不负责处理事务、会话或连接,而把这交给一个工具类,封装所有关于数据库的操作。把Session的获取,语句的关闭等放在这个类更好。通常的设计把数据 库的代码放到DAO的实现类中,这样如果某个DAO实现类设计不良,要改动就必须牵涉到很多地方,不利于维护。在这里的工具类代码如清单6。 清单 6. public class HibernateUtil { pr原创 2008-12-04 22:56:00 · 639 阅读 · 0 评论 -
DAO工厂类的实现
在刚开始的时候设计DAO模式的结构时,我们按 一个典型的 DAO 实现有以下组件: 一个 DAO 工厂类 一个 DAO 接口 一个实现了 DAO 接口的具体类 数据传输对象(有时称为值对象) 如何才能使系统通过一种更加灵活地方式来使用不同的实现了 DAO 接口的具体类呢?以下将仿照Spring的bean工厂,实现一个简单的IOC容器,这种做法的目的,其实就是帮助我们更好地理解DIP原创 2008-12-04 23:06:00 · 1714 阅读 · 0 评论 -
DAO 设计模式 总结
一.学会怎样编写更好的 DAO 的技巧 1 注意事务界定的处理方法,不要把这些处理细节放在DAO方法里面,使代码得到高度地重用,而不是重复写同样的代码,记得是重用而不是重复! 2 DAO异常的处理,达到DAO 更容易使用、更健壮及更易于维护的效果。二.学会了什么是针对接口编程,什么是依赖反转原则(DIP) "针对接口编程"是面向对象的一条重要的原则,敏捷软件开原创 2008-12-04 23:13:00 · 695 阅读 · 0 评论