繁体中文
设为首页
加入收藏
当前位置:IT认证首页 >> Java >> 复习指导 >> Spring中的Template和Callback模式

Spring中的Template和Callback模式

2007-04-08 12:17:48  作者:刀断水  来源:ITZERO收集整理  浏览次数:107  文字大小:【】【】【
关键字:java

Spring中的Callback模式与Template模式合用,随处可见。Template method被广泛的使用,像Servlet就是使用这个模式。Template mothod模式虽然能简化很多重复的代码,但这种模式的也有不少限制。Template mothod将一个功能的实现分成许多小的步骤,在父类中定义了这些步骤的顺序,让子类来具体实现每一个小的步骤。这些小的步骤是protected,以防止用户不正确的使用这些小的步骤而产生异常。这样就产生了一个限制,那就是你需要继承Template然后重新实现具体的小步骤。如果这个Template有许多方法,就像JdbcTemplate,如果你每次继承这个庞大的类,然后只是重写某个小步骤中来订制你自己的功能,就会显得非常笨重,更何况数据库操作使用的如此频繁,难道你每进行一个操作就通过继承订制一个,显然不可能这么做。

Spring使用Callback模式与之配合,达到了去掉重复代码的效果,同时增加了很大的灵活性,你只需要实现某些CallBack就可轻松订制出Template

那么什么时候才是Callback模式与Template模式结合的最佳时机呢。显然如果每个具体的步骤都需要真正去具体实现而不是简单的改变参数或设置某个对象就ok的话,使用Callback很难去订制,因为你可能需要传递多个Callback作为参数,并让用户去实现,是用Java的内部类本来就是一个比较丑陋的语法,更何况参数是多个。这相当于你把每个小步骤封装成为接口,然后分别继承之然后实现。显然没有达到方便灵活的效果,这时候直接使用Template method模式就比结合Callback要好。而如果用户只需要定制一个方法能就达到用户的要求,或者更简单,只是设置不同的参数,那么使用Callback就具有很好的灵活性


责任编辑:itzero

本文引用地址: http://exam.itzero.com/2007/0408/16755.html 请粘贴到你的QQ/MSN上推荐给你的好友

相关文章
JAVA基础知识精华总结
新手必读 Java中流的概念
Java学习之路:不走弯路,就是捷径
Java学习之路:不走弯路,就是捷径(上)
Java论证考试资格基础知识:ASP+和JSP大比拚
菜鸟入门篇:如何迅速获取Java认证?
JAVA的“精华”就在“面向对象思想”
Java认证权威问答精华集
Java认证的目的和步骤
Java语言的12大特色介绍
Java:IT认证中最有魅力的开发工具之一
 

最新文章

更多

· Java认证宝典v1.0之SCJD篇
· J2EE开发过程中的异常处理
· Struts中关于用户权限限...
· Java语言的局部类
· Spring中的Template和Ca...
· 在Java中实现条件编译
· JavaIDE实用对比:Eclip...
· Java中的语句、分支和路...
· J2SE(TM)5.0语言特性
· JAVA认证考试:全面详解...

热点文章

更多

其它推荐