模式
hivon
这个作者很懒,什么都没留下…
展开
-
JSP设计模式基础:View Helper模式——学习如何使用View Helper模式使得Model数据适应表现层的需要(3)
创建菜单在某些情况下,动态的产生菜单或集合链接是很有用的。控制器执行相应的动作,这些动作轮流产生一系列的链接项。使用Helper的View产生格式化的链接来存储在Model里。例如,View可能是一个JSP页面,这个页面需要显示为一个给定的产品显示附加项的菜单。这是一个解释你为什么需要动态显示菜单的一个例子。用户可能会点击公司目录的某一个产品,希望能看到他们所选择的产品的附加项的列表翻译 2006-02-24 23:19:00 · 2956 阅读 · 0 评论 -
“围城”式困境中的依赖注入模式及Spring(1)
“围城”式困境中的依赖注入模式及Spring 写在前面的话依赖注入模式、或者说IOC模式,随着Spring框架的崛起而被人老生常谈。但是,有一些人只是在使用Spring中被动的使用依赖注入模式。对于使用Spring和依赖注入模式给自己的项目带来了多少好处,我们没有仔细的计算过;我们使用Spring及依赖注入模式只是因为很多人都在这么使用,或者说轻量级容器现在很流行。本文试图来谈谈依原创 2006-03-07 04:22:00 · 2980 阅读 · 0 评论 -
从田忌赛马谈Iterator模式
从田忌赛马谈Iterator模式 在战国时代的齐国,赛马是一种非常流行的贵族运动。这些贵族们,上至国王,下至大臣,都以赛马为乐。不但如此,还经常以重金赌输赢。他们中间,据说大将田忌和齐王尤好此术。一天,齐王和田忌照常来赛马。当时的情况是这样的:田忌和齐王的马都分为上、中、下原创 2006-03-02 20:13:00 · 3333 阅读 · 2 评论 -
“围城”式困境中的依赖注入模式及Spring(3)
“围城”式困境中的依赖注入模式及Spring(3) 依赖注入模式和工厂模式由于依赖注入模式的功能之一是初始化一个类,所以可以通过依赖注入模式来获取对象。我们知道,这个功能一向是工厂模式的领地。于是,有很多人就公然宣称:依赖注入模式能够代替工厂模式。他们的理由之一是,既然有了IOC容器,就可以通过它来初始化原创 2006-04-08 20:19:00 · 4076 阅读 · 5 评论 -
应用泛型的策略模式
应用泛型的策略模式作者:Dr. Heinz M. Kabutz 摘要策略模式相当的简单。通过使用这个模式,我们可以把一些内聚的状态转化为一些外在的状态,这样可以实现共享策略对象。当每一个策略对象为了实现它的功能而需要不同批次的信息的时候,策略模式将变得相当的灵活。在这篇文章里,我们将看到我们如何使用Java5的泛型把正确的上下文子类型传递到每一个策略对象中。 欢翻译 2006-04-16 10:25:00 · 4926 阅读 · 0 评论 -
Eclipse Template与模式
Eclipse Template与模式 Eclipse Template对我们是一个相当有用的工具,能节省我们很多写重复代码的时间;也能减少我们对copy&paste的使用。关于Eclipse Templage的基础知识,详见我的Blog:Eclipse Template用原创 2006-07-24 09:50:00 · 3144 阅读 · 1 评论 -
泛型与模式
泛型与模式 模式是面向对象技术深入应用的产物,它给了我们代码极大的动态性和灵活性,保证了系统的可扩展性。这是我们在面向对象分析和编码过程中广泛的使用模式的最重要的原因。但是实际的系统的需求是复杂的,复杂到我们使用了成熟的面向对象技术和模式后,原创 2006-07-31 09:06:00 · 2901 阅读 · 0 评论 -
Groovy探索之Delegate模式 一
Groovy探索之Delegate模式 一 Delegate即是委派的意思。在Java语言中,很少提到委派或者委派模式,即使用到了也不说,这是因为Java语言的特点,实现起委派来相当的繁琐,而且只能适用于一些简单的场合。但现实的需求是,由于敏捷编程的兴起,重构技术也得到了大家的广泛使用;要使用重构,其中的一个重要原则是:使用组合代替聚合,这原创 2008-06-11 08:19:00 · 4245 阅读 · 2 评论 -
Groovy探索之闭包 七 使用闭包来实现模板方法模式
Groovy探索之闭包 七 使用闭包来实现模板方法模式 我们知道,很多的设计模式都是通过增加接口来达到解耦的目的,使得代码的扩展性大大增强。其中,模板方法模式就是这样的。请看下面的例子。假设我们有如下的两个类:class A { public void doing() { println doing原创 2008-09-15 08:24:00 · 3136 阅读 · 0 评论 -
Groovy探索 Visitor模式
Groovy探索 Visitor模式 Groovy语言中的Visitor模式的实现,其实也跟闭包有很大的、直接的关系。当然,你也可以完全不用闭包来实现Visitor模式,就像Java语言那样来实现。但使用了闭包的Visitor模式更加简单,更加易于扩展。所以,我们在Groovy语言中,倾向于使用闭包来实现Visitor模式。这原创 2009-03-23 08:07:00 · 2174 阅读 · 0 评论 -
Groovy探索之责任链模式
Groovy探索之责任链模式 责任链模式在现实中也有很多对应的实例。比方说,一个公司有A,B,C,D四个项目组,各自相邻。一天,一个客户打电话进来,说我们某某项目出了点问题,请帮忙解决。电话是由A项目组的人接的,A项目组的人一听,说这不是我们负责的项目,我们把它交给B项目组吧。B项目组的人一听,也说,这也不是我们项目组负责的,我们把原创 2009-04-10 07:55:00 · 1782 阅读 · 3 评论 -
JSP设计模式基础:View Helper模式——学习如何使用View Helper模式使得Model数据适应表现层的需要(2)
应用View Helper模式下面的Helper可能对你在某些方面特别有用,但是最起码,他们要告诉你怎么在你的应用中使用View Helper模式。下面是一个定制标签的实现并且被声明在helpers.tld文件里。这个文件在web.xml 文件里做为一个条目和/helpers标签uri相关联。如下所示: /helpers /WEB-INF/tlds/helpers.t翻译 2006-02-24 22:56:00 · 3215 阅读 · 0 评论 -
JSP设计模式基础:View Helper模式——学习如何使用View Helper模式使得Model数据适应表现层的需要(1)
JSP设计模式基础:View Helper模式 ——学习如何使用View Helper模式使得Model数据适应表现层的需要 (第一部分)作者:Andr翻译 2006-02-24 22:45:00 · 3701 阅读 · 1 评论 -
没有应用服务器的J2EE(2)
步骤4:增加Declarative 事务管理Spring允许我们往任何可配置的对象中加入declarative 事务管理。假设我们希望确定bank 对象永远被一个有效的事务上下文所调用。为了达到这个目的,我们在实际对象的基础上再配置一个代理类。这个代理类和实际的对象拥有同一个接口,所以客户端能够正确地使用它。这个代理类能够被配置来包装每一个BankDAO 对象的方法以调用事务。配置文件如下。不翻译 2006-03-24 18:25:00 · 2453 阅读 · 0 评论 -
动态的工厂模式
工厂模式可以说是我们应用得最广泛的设计模式之一。所谓工厂模式,就是不是由客户类来实现类的实例,而是由工厂来实现类的实例。如没有应用工厂模式的客户类Client要实现对接口类Parent和他的实现类Son的使用,必须在Client里面实现如下代码:Parent p = new Son();这种依赖关系为:从上面的图可以看出,客户类Client同时依赖于接口类Parent及它的实现类Son,这种依赖太原创 2005-04-10 23:01:00 · 8008 阅读 · 2 评论 -
行为的封装——模式系列谈之Command模式
行为的封装——模式系列谈之Command模式 解决一个问题,我们总是先将这个问题进行分解,分解成为很多小块,或者方面;然后我们关注问题的每一个方面,将他们一一解决;最后完成了对整个问题的解决。在我们的模式的解决思路中,都贯穿了这种思想。模式总是不厌烦的将各种依赖进行解耦,然后去关注问题的各个方面。 一般说来原创 2005-12-23 13:26:00 · 2168 阅读 · 1 评论 -
螳螂捕蝉、黄雀在后——从一个成语谈观察家模式
观察家模式是一个事件通知模式,被观察者发生某个事件,或者状态发生某个变化,就通知观察者,这样观察者就能采取适当的行动。下面我以一个简单的例子来说明一下这个模式的应用。我们都知道,蜜蜂是勤劳的精灵,它总是四处采蜜。只要花朵的花瓣一张开,她就飞上去采蜜。我们轻易就能想到,在这里,蜜蜂应该是一个观察者,而花朵是一个被观察者。只要花朵发生花瓣张开事件,就通知了观察者蜜蜂,蜜蜂就可以去采蜜了。现在我们就原创 2005-12-09 13:37:00 · 3294 阅读 · 0 评论 -
组合的魔力——模式系列谈之Decorator模式
组合的魔力 ——模式系列谈之Decorator模式一、上帝的智慧《圣经》上说上帝花了六天造好世间万物。我们就会感叹,世间万物,何止上万,原创 2005-12-21 10:21:00 · 2304 阅读 · 0 评论 -
类的递归和组合模式
类的递归和组合模式 递归算法是大家非常熟悉的一种算法。如著名的菲波拉契数列:输入数列的前两项,以后的每一项都是它的前两项之和。现在我们要求该数列的第N(N>0)位的数是多少。对于这个问题,我们可以很轻松的给出下面的算法: public int getResul原创 2006-01-04 11:25:00 · 3113 阅读 · 0 评论 -
代理模式、动态代理和面向方面
代理模式、动态代理和面向方面 代理的意思很好理解,它借鉴了我们日常所用的代理的意思:就是本来该自己亲自去做的某件事,由于某种原因不能直接做,而只能请人代替你做,这个被你请来做事的人就是代理。比如过春节要回家,由于你要上班,没时间去买票,就得票务中介代你购买,这就是一种代理模式。这个情景可以形原创 2006-01-11 22:52:00 · 7721 阅读 · 5 评论 -
从诸葛亮的三个锦囊妙计谈策略模式
从诸葛亮的三个锦囊妙计谈策略模式 话说当年东吴孙权为刘备借走了荆州不还而耿耿于怀,却不料甘夫人去世,周郎顿时计上心来,让孙权将其妹嫁与刘备,骗刘备来东吴完婚。刘备又不是傻子,当然知道其中的猫腻,当即表态:打死也不去。诸葛亮却说无妨,当下给了赵云三个锦囊妙计,让他陪刘备去东吴完婚……最后的结果大家原创 2006-01-23 07:06:00 · 15221 阅读 · 7 评论 -
“凿壁借光”的模式场景——设计模式系列谈之Adapter模式
“凿壁借光”的模式场景 ——设计模式系列谈之Adapter模式 在软件的开发过程中,我们经常会在已有的系统或类的基础上进行一些扩展。在扩展的过程中,有一些类可能直接原创 2006-02-05 20:55:00 · 4483 阅读 · 4 评论 -
“围城”式困境中的依赖注入模式及Spring(2)
“围城”式困境中的依赖注入模式及Spring(2) 我所经历的项目中的IOC的真实使用古诗云,“只在此山中,云深不知处”。我们对新技术的使用同样会出现这样的困惑:我们往往把新技术拿来,根据一些教程或DEMO上的例子来一一实施,而不管这些技术对于我们的实际项目是否适用。闲话少说,我们现在就来看看原创 2006-03-22 20:06:00 · 2222 阅读 · 2 评论 -
代码的“门面”——模式系列谈之Façade模式
代码的“门面” ——模式系列谈之Façade模式 看到“门面”这个词,大家一定都觉得很熟悉。不错,这个词正是借用了我们日常生活中的“原创 2006-02-17 20:16:00 · 4223 阅读 · 3 评论 -
没有应用服务器的J2EE(1)
没有应用服务器的J2EE 作者: Guy Pardon 尽管由于在J2EE平台(应用服务器)和它的规范的编程模型(企业J翻译 2006-03-24 18:10:00 · 2676 阅读 · 2 评论 -
Groovy探索 关于“Load my Resource”模式的解读
Groovy探索 关于“Load my Resource”模式的解读 很早就在Groovy语言的官方文档上看到了“Load my Resource”模式,却一直没有在意,可能是因为它不是GOF的经典模式中的一种。最近又不经意的看到了它,却鬼使神差的大概看了一遍,当略略有点明白它的意思时,就有点惊奇于它的功能了,当再一次阅读时,静下心来想一想,就真正感叹于原创 2009-06-05 08:03:00 · 6235 阅读 · 1 评论