Java设计模式之策略模式实践

1、策略接口

java 复制代码
/**
 * 策略接口
 */
public interface DemoStrategy {
    Result execute();
}

2、策略工厂

java 复制代码
/**
 * 策略工厂
 */
@Component
public class DemoFactory {
    @Resource
    private final Map<String, DemoStrategy> demoStrategy= new ConcurrentHashMap<>();

    public DemoStrategy doStrategy(String data){
        return this.demoStrategy.get(data);
    }
}

3、策略实现类

java 复制代码
/**
 * 策略实现类
 */
@Component("dataName")
public class DataNameImpl implements DemoStrategy {
    
    @Override
    public Result execute() {
        //do something
        return null;
    }
}

4、调用Demo

java 复制代码
// class 

@Resource
private DemoFactory demoFactory ;

//method 

String dataName= "dataName";
                
return demoFactory.doStrategy(dataName).execute();
相关推荐
程序员侠客行6 分钟前
Tomcat 从陌生到熟悉
java·tomcat·web
wertyuytrewm8 分钟前
Java 异常|Java Exceptions
java·开发语言
ProgramHelpOa10 分钟前
Amazon SDE Intern OA 2026 最新复盘|70分钟两题 Medium-Hard
java·前端·javascript
雪碧聊技术17 分钟前
深入理解 Java GC:从“房间清洁工”到解决系统卡顿实战
java·开发语言
大鹏说大话22 分钟前
Java并发编程核心:线程安全、synchronized与volatile的深度剖析
java·开发语言
迷藏49424 分钟前
# 发散创新:低代码开发新范式——用可视化逻辑构建企业级业务系统 在当今快速迭代的软件工程实践
java·python·低代码
JAVA+C语言27 分钟前
Java IO 流
java·开发语言
山川行33 分钟前
Python快速闯关8:内置函数
java·开发语言·前端·笔记·python·学习·visual studio
Java基基37 分钟前
sdkman 一键切换 JDK 版本管理工具
java·开发语言·sdkman
美好的事情能不能发生在我身上41 分钟前
Jmeter压测遇到的问题
java·分布式·jmeter