com.hn.sms.readme.md Maven / Gradle / Ivy
## 短信平台
创蓝、创瑞、聚合
创蓝可能有多个模板,如何处理?
1、数组配置? X
2、CONFIG_KEY 比如 sms.chuangLan
拼一个场景 sms.chuangLan-sendNotice.apiAccount
拼一个场景 sms.chuangLan-sendNotice.apiSecret
拼一个场景 sms.chuangLan-sendNotice.msgModel
SmsUtil.chuangLan(sendNotice).send(phone,code);
创瑞可能有多个签名和模板id,如何处理?
// 初始化 加载自定义配置信息
SmsUtil.customize(MsgPlat,scene,param);
// 调用
SmsUtil.send(MsgPlat,scene,phone,code);
// 链式 必须 new 对象
SmsUtil.platform().scene().send(phone,code);
SmsUtil.platform().send(phone,code);
SmsUtil.scene().send(phone,code);
SmsUtil.send(phone,code);
// 静态调用
// 取默认配置平台 默认场景 发送短信
SmsUtil.send(phone,code);
// 取指定平台 默认场景 发送短信
SmsUtil.send(MsgPlat,phone,code);
// 取指定平台 指定场景 发送短信
SmsUtil.send(MsgPlat,scene,phone,code);
// 取指定平台 指定场景 指定配置参数 发送短信
SmsUtil.send(MsgPlat,scene,param,phone,code);
链式编程的优点和缺点
优点: 连贯,语意集中,增强代码可读性。
缺点: 对方法的返回类型有要求 ,代码简洁是说可以format到一行吗..然后导致了不利于调试..
2020-01-04 去除直接创建对象的方法 比如 juHe() ... 每调用一次方法,就new一次,这样浪费内存
创建send(MsgPlatformEnum msgPlatform, String phone, String code) 方法
内置Map 缓存对象 通过key获取对象 对象可以复用
2020-01-07 准备采用链式编程 和hutool作者聊了下 决定放弃用 链式编程
12:11:43
路小磊 2020-01-07 12:11:43
链式写法,适合参数特别多的情况
12:11:43
路小磊 2020-01-07 12:11:43
枚举中不建议加太多方法
路小磊 2020-01-07 12:12:10
一般是XXXBuilder.create().build
路小磊 2020-01-07 12:12:16
建造者模式
路小磊 2020-01-07 12:12:41
hutool为了简单,使用XXXUtil.send
路小磊 2020-01-07 12:12:58
所以SmsUtil.send即可
路小磊 2020-01-07 12:13:13
反正发送短信内容很简单
路小磊 2020-01-07 12:13:22
你可以参考MailUtil
© 2015 - 2024 Weber Informatics LLC | Privacy Policy