上一篇介绍了策略模式结合静态代理对策略进行应用,这里介绍结合简单工厂对策略模式的应用。
定义策略枚举:
public enum DaoType {
/**
* hibernate
*/
HIBERNATE,
/**
* ibatits
*/
IBATITS
}
定义策略工厂:
/**
* @author alex
*
*/
public class StratagemFactory {
private AbstractDao dao;
public StratagemFactory(DaoType type){
if(type != null){
switch(type){
case HIBERNATE :
dao = new HibernateDao();
break;
case IBATITS :
dao = new IbatitsDao();
break;
}
}
}
public Object getObject(){
return dao.getById();
}
}
client中应用策略:
public static void testStratagemFactory(){
// StratagemFactory stratagem = new StratagemFactory(DaoType.HIBERNATE);
StratagemFactory stratagem = new StratagemFactory(DaoType.IBATITS);
System.out.println(stratagem.getObject());
}
分享到:
相关推荐
本篇文章将详细探讨"设计模式之Factory",它是一种非常基础且重要的创建型设计模式。 Factory模式的核心思想是提供一个接口或者抽象类,用于创建某一类对象,但允许其子类决定实例化哪一个类。这种模式使得创建过程...
还有“工厂模式”(Factory pattern),它是创建型设计模式之一,用于创建对象而不暴露创建逻辑给客户端,并且通过使用一个共同的接口来指向新创建的对象。这种模式在创建对象时提供了更高的灵活性和可扩展性。在...
1. 在Web开发中,Spring框架就广泛应用了设计模式,如工厂模式用于创建Bean,单例模式保证每个Bean只有一个实例,观察者模式用于事件驱动编程,策略模式用于实现AOP(面向切面编程)。 2. 在游戏开发中,状态模式常...
《设计模式——Java语言中的应用》是一本专为Java开发者深入理解面向对象设计而编写的经典书籍。设计模式是软件工程领域中经过实践验证的、解决常见问题的有效方案,它们代表了在特定上下文中,针对特定问题的最优...
在这个“设计模式之美”的学习笔记中,我们将探讨一些主要的设计模式,以及它们在实际开发中的应用。 首先,我们从创建型模式开始。这类模式主要用于对象的创建,如单例模式(Singleton)、工厂模式(Factory ...
《Java设计模式之禅》是一本深入浅出讲解设计模式的书籍,书中不仅包含23种经典设计模式的案例,还详细介绍了设计模式背后的思想和原则,适合初学者以及对设计模式有一定了解的程序员阅读。本书旨在帮助读者理解如何...
PHP 设计模式实例之观察者模式、策略模式、简单工厂模式是指在 PHP 编程中应用设计模式来解决实际问题的实例。设计模式是一种通用的解决方案,可以重复使用,提高代码的可维护性、灵活性和可扩展性。 观察者模式是...
1. **工厂模式(Factory Pattern)**:工厂模式是一种创建型设计模式,用于创建对象而无需指定创建对象的具体类。包括简单工厂模式、工厂方法模式和抽象工厂模式。 2. **单例模式(Singleton Pattern)**:单例模式...
由于篇幅限制,这里不展开讨论,但读者可以进一步探索JDK中诸如策略模式、命令模式等行为型模式的应用。 ### 总结 设计模式在JDK中的应用非常广泛,理解并掌握这些模式不仅有助于提升代码的质量和可维护性,还能...
本文将深入探讨四种常见的设计模式:单件模式(Singleton)、工厂模式(Factory)、策略模式(Strategy)和观察者模式(Observer),并以PHP语言为背景进行解释。 首先,我们来看单件模式。单件模式确保一个类只有...
### Java设计模式详解 #### 一、引言 ...本文介绍了几种常用的设计模式,包括J2EE设计模式和软件开发设计模式,并详细探讨了它们的应用场景。希望这些知识能够帮助你在开发过程中更加高效地解决问题。
在阅读和实践这些模式的过程中,我们可以逐渐掌握如何在实际项目中有效地应用设计模式,从而提高软件质量和可维护性。因此,设计模式的学习对于任何希望提升自身编程技能的开发者来说,都是一项至关重要的任务。
文档中的“23种设计模式学习笔记.doc”可能包含了对这23种模式的详细解释和实例,而“设计模式之我爱我家.doc”可能从一个更生活化的角度来阐述设计模式的概念。“软件23种设计模式,超级经典的.pdf”可能是对这些...
设计模式是软件工程中的一种最佳实践,它是在特定上下文中解决常见问题的模板。在Java编程语言中,设计模式的应用可以极大地提升代码的可读性、可维护...因此,深入理解和应用设计模式是每个Java开发者必备的技能之一。
JavaEE设计模式是软件开发中的重要概念,它们是经过时间考验、被广泛接受的解决方案模板,用于解决在构建分布式企业级应用程序时常见的问题。这些模式提供了可重用的结构,帮助开发者更有效地组织代码,提高代码的...
2.设计模式是比 J2EE 等框架软件更小的体系结构,J2EE 中许多具体程序都是应用设计模式来完成的,当你深入到 J2EE 的内 部代码研究时,这点尤其明显,因此,如果你不具备设计模式的基础知识(GoF 的设计模式),你很难...
C++中,理解并应用设计模式能够使代码结构更清晰,易于扩展和维护。 1. 创建型模式:如单例模式(Singleton)、工厂模式(Factory)、抽象工厂模式(Abstract Factory)等,用于控制对象的创建过程。 2. 结构型模式...
在本项目“设计模式期末大作业 ToFu”中,开发者运用了多种设计模式来构建一个豆腐商店的应用。这个应用展示了如何在实际编程中灵活运用设计模式来提高代码的可读性、可维护性和可扩展性。以下是每个设计模式的详细...