padrões de projeto Java ---- Estratégia (1)

perspectivas abstratas; muita força à força

projeto demo

Demanda na figura a seguir

Aqui Insert Picture Descrição

  • Estratégia tem sido a de alcançar maneira comum de

Definir uma variedade de interfaces para alcançar

public interface Pay {

    String call();
}

@Component
public class AliPay implements Pay {


    @Override
    public String call() {
        System.out.println("调用支付宝");
        return "ali";
    }
}
@Component
public class UnionPay implements Pay {

    @Override
    public String call() {
        System.out.println("调用银联");
        return "union";
    }
}
@Component
public class WxPay implements Pay {

    @Override
    public String call() {
        System.out.println("调用微信");
        return "wx";
    }
}

Escrever um teste de demonstração

@RestController
public class DemoController {

    @PostMapping(value = "/strategy/normal/pay")
    public String pay(@RequestParam String beanId) {
    
         Pay pay = SpringUtils.getBean(beanId, Pay.class);
         String call = pay.call();
         return call;
    }
}

projeto demo

Sob uma fábrica estática + estratégia para alcançar encaixe perfeita, sem se outra pessoa

Publicado 42 artigos originais · ganhou elogios 19 · vê 10000 +

Acho que você gosta

Origin blog.csdn.net/weixin_37828719/article/details/103799872
Recomendado
Clasificación