🔌使用接口类配置
大约 2 分钟
sms4j自 3.0.0版本起,放弃之前的jdbc配置和自定义配置,统一融合为接口类配置,用户可以通过实现指定接口完成配置
接口只关注数据结果,不关注数据来源,此种方式有更高的自由度
@Component
public class ReadConfig implements SmsReadConfig {
//这里的configId指的是框架在调用该接口方法时候会传递进来的参数,用户可以根据此参数作为标准来动态的进行查询
@Override
public BaseConfig getSupplierConfig(String configId) {
UniConfig uniConfig = new UniConfig();
//此处仅为示例,实际环境中,数据可以来自任意位置,
return uniConfig;
}
@Override
public List<BaseConfig> getSupplierConfigList() {
//此处仅为示例,实际环境中,数据可以来自任意位置,
return null;
}
}
@Component
public class Demo {
@Autowired
ReadConfig config;
//此处不一定使用这种方式进行初始化,只要保证在获取相应的configId对应的实例前执行一次SmsFactory.createSmsBlend完成创建实例即可
@EventListener
public void init(ContextRefreshedEvent event){.
// 创建SmsBlend 短信实例
SmsFactory.createSmsBlend(config,"在配置中定义的configId");
}
}