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();
相关推荐
砍光二叉树1 分钟前
【设计模式】创建型-单例模式
单例模式·设计模式
于慨1 分钟前
java Web
java·开发语言·前端
麦麦鸡腿堡2 分钟前
JavaWeb_maven
java·开发语言·maven
我爱学习_zwj4 分钟前
设计模式-3(装饰器模式)
前端·设计模式·装饰器模式
杨过姑父9 分钟前
jvm笔记2
java·jvm
电子云与长程纠缠9 分钟前
Godot学习02 - 输入
java·学习·godot
LSL666_13 分钟前
IService——使用和新增
java·开发语言·mybatisplus
sjmaysee16 分钟前
@RestController注解
java
魑魅魍魉都是鬼16 分钟前
Android:java kotlin 单例模式
android·java·单例模式
WG_1718 分钟前
Linux44:POSIX信号量:
java·开发语言