SpringBoot 结合工厂模式开发实战

时间:2025-03-26 08:33:12
// 模型实现类-1 @Component @Slf4j public class ModelOne extends AbsModel { @Override public boolean enabled() { return true; } @Override public ModelEnum modelName() { return ModelEnum.MODEL_ONE; } @Override public Map<String, Integer> execute() { Map<String, Integer> rlt = Maps.newHashMap(); rlt.put("TxId", 10); rlt.put("AlId", 100); log.info("execute model one..."); return rlt; } } // 模型实现类-2 @Component @Slf4j public class ModelTwo extends AbsModel { @Override public boolean enabled() { return true; } @Override public ModelEnum modelName() { return ModelEnum.MODEL_TWO; } @Override public Map<String, Integer> execute() { Map<String, Integer> rlt = Maps.newHashMap(); rlt.put("TxId", 88); rlt.put("AlId", 89); log.info("execute model two..."); return rlt; } } // 模型实现类-3 @Component @Slf4j public class ModelThree extends AbsModel { @Override public boolean enabled() { return true; } @Override public ModelEnum modelName() { return ModelEnum.MODEL_THREE; } @Override public Map<String, Integer> execute() { Map<String, Integer> rlt = Maps.newHashMap(); rlt.put("TxId", 78); rlt.put("AlId", 77); log.info("execute model three..."); return rlt; } } // 模型实现类-4 @Component @Slf4j public class ModelFour extends AbsModel { @Override public boolean enabled() { return false; } @Override public ModelEnum modelName() { return ModelEnum.MODEL_FOUR; } @Override public Map<String, Integer> execute() { Map<String, Integer> rlt = Maps.newHashMap(); rlt.put("TxId", 69); rlt.put("AlId", 70); log.info("execute model four..."); return rlt; } } // 模型实现类-5 @Component @Slf4j public class ModelFive extends AbsModel { @Override public boolean enabled() { return true; } @Override public ModelEnum modelName() { return ModelEnum.MODEL_FIVE; } @Override public Map<String, Integer> execute() { Map<String, Integer> rlt = Maps.newHashMap(); rlt.put("TxId", 98); rlt.put("AlId", 95); log.info("execute model five..."); return rlt; } }