简介 在前面写测试代码的时候,不管是基于原始dao还是Mapper接口开发都有许多的重复代码,将spring和mybatis整合可以减少这个重复代码,通过spring的模板方法模式,将这些重复的代码进行封装,如:获取SqlSessionFactory、SqlSession、SqlSession的关闭 ...
分类:
编程语言 时间:
2016-05-18 21:25:22
阅读次数:
259
模板方法模式 模板方法模式 在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 模板即是一个方法。此方法将算法定义成一组步骤,其中的任何步骤都可以是抽象的,由子类负责实现。这可以保证算法结构保持不变,同时由子类提供部分实 ...
分类:
其他好文 时间:
2016-05-15 12:12:54
阅读次数:
144
总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
其实还有两类:并发型模式和线程池模...
分类:
其他好文 时间:
2016-05-13 14:59:54
阅读次数:
252
设计模式-模板方法模式算是看书的笔记并非原创,总结:模板方法模式定义Define the skeleton of an algorithm in an operation,deferring some steps to subclasses,Template Method lets subclasses redefine certain steps of an algorithm without c...
分类:
其他好文 时间:
2016-05-12 13:42:32
阅读次数:
183
行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含以下11种设计模式:
1. 模板方法模式(Template Method Pattern)使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
2. 命令模式(Command Pattern)是将一个请求封装为一个对象,从而使你可用不同的请求对客户端进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。
3....
分类:
其他好文 时间:
2016-05-07 10:56:15
阅读次数:
217
1. 模板方法的一个实例
这一节主要来学习一下设计模式中的模板方法模式。我们先来看一个例子:假如现在老板让你做一个汽车的模型,要求只要完成基本功能即可,不考虑扩展性,那你会怎么做呢?我们首先会根据经验设计一个类图:
由这个类图可知,非常简单的实现了悍马车,该车有两个型号H1和H2。那现在我们开始实现这两个型号的悍马车,首先我们得把抽象类写好,然后两个不同的...
分类:
编程语言 时间:
2016-05-07 07:42:01
阅读次数:
314
BankTemplateMethod抽象类
public abstract class BankTemplateMethod {
//具体方法
public void takeNumber(){
System.out.println("取号排队");
}
public abstract void transact(); //办理具体的业务 //钩子方法
public v...
分类:
编程语言 时间:
2016-05-06 12:31:00
阅读次数:
150
我们还是举上一节的例子:生产汽车。上一节我们通过模板方法模式控制汽车跑起来的动作,那么需求是无止境的,现在如果老板又增加了额外的需求:汽车启动、停止、鸣笛引擎声都由客户自己控制,他想要什么顺序就什么顺序,那该如何做呢?
1. 汽车无休止的改造
假如现在要生产两种车,奔驰和宝马,这两辆车都有共性,我们所需要关注的是单个车的运行过程,这才是老板所关心的点所在。我们先这样想,针对这个...
分类:
编程语言 时间:
2016-05-06 12:18:01
阅读次数:
179
Template Method lets subclassess redefine certain steps of an algorithm without changing the algorithm's structure. 定义一个操作中的算法框架,而将一些步骤延迟到子类中。使得子类可以不改 ...
分类:
其他好文 时间:
2016-05-05 13:00:20
阅读次数:
123