文章目录 前言 一、使用静态代码块方式初始化 1.复习一下jvm类加载过程 2.静态代码块方式具体实现 3.加入动态配置中心辅助 二、使用Spring框架bean加载过程的Aware方法初始化 1.复习一下bean的生命周期 2.对应的ApplicationContextAware方法具体实现 三、优缺点对比 总结 前言 假设一个营销抽奖场景,奖品发放支持满减优惠券和实物兑换码两种类型,由于兑换发放具有相似的上下文流程,可以用工厂策略模式的方式进行类型和实现类的映射。例如: map---("coupon",CouponDistributeService) //优惠券发放 map---("redeemCode",