一:策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改,在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。
一下实现的具体代码结构:
Java代码
public interface IStrategyMessage {
/**
* 抽象策略
*/
String test(String msg);
}
定义不同的实现类
@Service("messageA")
public class MessageA implements IStrategyMessage {
@Override
String test(String msg) {
return "messageA:"+msg;
}
}
@Service("messageB")
public class MessageB implements IStrategyMessage{
@Override
String test(String msg) {
return "messageB:"+msg;
}
}
然后在环境类中使用这些策略
@Service
public class Subject{
@Autowired
Map<String,IStrategyMessage> messageStrategy;
public void check(){
String msg = "我是messageB";
IStrategyMessage strategyMessage = messageStrategy.get("messageB")
System.out.print(strategyMessage .test(msg))
}
}
以上就是一个简单的策略模式,可用于生产环境