工厂模式在电子保单模板打印中的实际应用
最近,遇到分别调用打印一个产品的 3 种打印电子保单的情况,用工厂模式实现比较方便灵活:
其实现如下:
定义工厂抽象类:EPolicyDataProvider
?
?
?
?
调用方式如下 :
?
Config config = EPolicyConfig.getInstance().getConfig("HmV8000"); //或者其他2 个应用的标识if (config == null) {throw new GenerateEPolicyException("生成电子保单失败,无法获取产品["+ policy.getProduct().getProductCode() + "]电子保单配置信息!");}//在上面getConfig方法中, 根据应用标识生成provider的实例类。 就相当于工厂根据标识符的要求,生成了符合要求的"产品"// 应用名称 app_namebean.setApp_name(config.applyName);// XML报文信息 xmlvaluebean.setXmlvalue(config.provider.createEPolicyXml(policy, docPrint));?
?