给我一个使用策略模式加工厂模式的代码案例java springboot语言的
时间: 2023-03-07 11:44:35 浏览: 57
代码案例如下:// Strategy Pattern
interface Strategy {
void execute();
}class ConcreteStrategyA implements Strategy {
@Override
public void execute() {
System.out.println("Strategy A is executed");
}
}class ConcreteStrategyB implements Strategy {
@Override
public void execute() {
System.out.println("Strategy B is executed");
}
}// Factory Pattern
class StrategyFactory {
public static Strategy getStrategy(String strategyType) {
if("A".equalsIgnoreCase(strategyType)) {
return new ConcreteStrategyA();
} else if("B".equalsIgnoreCase(strategyType)) {
return new ConcreteStrategyB();
}
return null;
}
}// SpringBoot Example
@RestController
public class StrategyController {
@GetMapping("/strategy/{strategyType}")
public void executeStrategy(@PathVariable("strategyType") String strategyType) {
Strategy strategy = StrategyFactory.getStrategy(strategyType);
strategy.execute();
}
}