1.Command模式 是将对行为进行封装的典型模式 2.Factory模式 是将创建进行封装的模式, 3.Adapter模式 当两个系统的之间的接口不匹配时,就需要用适配器来把一个系统的接口转换为与另一个系统陪陪的接口。 同样也可以用作简化编程,如让适配器对某个接口的所有方法空实现,子类继承此适配器,即可只实现某个方法了。 4、代理模式 代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、及把消息转发给委托类,代理类和委托类之间为组合关系。
最近做的一个财务程序用到了策略模式,其中一个功能就是程序可以加载若干个财务Excel表格,对数据作一些处理后输出到一些新的表格中.其中需要处理的表格每个格式都不一样,所以要用不用的方法来读取,这时想到了策略模式,感觉场景还算比较合适. 下面说明如何使用策略模式 一.编写父类 编写加载表格的父类, 定义一些公用变量和方法. public abstract class LoadDataStrategy { public LoadDataStrategy() { super(); } //默认方法 public TJFinanceData loadData(Str ...
单例模式 三个要点: 一.是某各类只能有一个实例 二.是它必须自行创建这个事例 三.是它必须自行向整个系统提供这个实例 如场景 对一些类来说,只有一个实例是很重要的。虽然系统中可以有许多打印机,但却只应该有一个打印机服务程序,只应该有一个文件系统和一个窗口管理器。 一.饿汉式单例类 public class EagerSingleton { // 在这个类被加载时,静态变量m_instance 会被初始化,此时类的私有构造子会调 //用。这时候,单例类的惟一实例就被创建出来了。 private static final EagerSingleton m_instanc ...
  Dao模式相信程序员xdjm都应该知道,一个非常经典的模式 用了很长时间,在此总结一下. 一.什么是DAO DAO是DataAccessObject数据访问接口, 二.DAO的功能: 1.与数据库打交道。夹在业务逻辑与数据库资源中间。 2.DAO是把对数据库的操作(比如最基本的CRUD操作)全部封装在里面. 三.DAO的实现 1.一个DAO工厂类; 2.一个DAO接口; 3.一个实现DAO接口的具体类; 4.数据传递对象VO(有些时候叫做值对象). 如果使用一些框架如spring+hibernate 只需写dao的接口和实现即可以了,而且 ...
Template Method模式介绍: Template Method模板方法模式是一种行为型模式,具体点说是行为类型模式。主要解决在软件构建过程中,对于某一项任务,常常有稳定的整体操作结构,但各个子步骤却有很多改变的需求,或者由于固有的原因而无法和任务的整体结构同时实现。 GoF《设计模式》中说道:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤 HibernateTemplate类的execute方法即为模板方法,代码如下 public Object exe ...
学习了spring的HibernateTemplate类部分源码,总结一下自己对回调模式的理解。 在dao里经常有这样的语句 [code]public E findById(Serializable id) { return (E) getHibernateTemplate().get(clazz, id); } [/code] HibernateTemplate类源码 [code]public Object get(Class entityClass, Serializable id) throws DataAccessException { return get( ...