sms4j 2.2.0 介绍---短信而已,何必那么麻烦

短信而已,何必那么麻烦 -- sms4j功能介绍

在实际项目中,越来越多的东西需要我们去发送短信,虽说这个问题本身不难,但是各家短信厂商有着不同的方式和标准,导致我们学习和使用的成本极高,再加上发送代码及其繁琐,极大的浪费了我们宝贵的摸鱼时间。于是,为解决广大程序猿/媛的麻烦,将简单的事情回归到简单的本质,sms4j应运而生!

接下来我们介绍一下他的使用方式

maven引入

目前sms4j支持多种形式的使用,springboot模式,java原生se模式,solon模式,我们以springboot模式为例

 <dependency>
      <groupId>org.dromara.sms4j</groupId>
      <artifactId>sms4j-spring-boot-starter</artifactId>
      <version> version最新版本查看官网 </version>
 </dependency>

配置

各家厂商有着许多的差异化的配置,这里我们也预留出了多种的配置方式,例如yml配置,sql配置,对象化配置等等。我们可以根据自己的实际情况选择一种合适的配置方式。

我们以yml配置为例:

   sms:
      alibaba:
        #阿里云的accessKey
        accessKeyId: 您的accessKey
        #阿里云的accessKeySecret
        accessKeySecret: 您的accessKeySecret
        #短信签名
        signature: 测试签名
        #模板ID 用于发送固定模板短信使用
        templateId: SMS_215125134
        #模板变量 上述模板的变量
        templateName: code
        #请求地址 默认为dysmsapi.aliyuncs.com 如无特殊改变可以不用设置
        requestUrl: dysmsapi.aliyuncs.com
      huawei:
        #华为短信appKey
        appKey: 5N6fvXXXX920HaWhVXXXXXX7fYa
        #华为短信appSecret
        app-secret: Wujt7EYzZTBXXXXXXEhSP6XXXX
        #短信签名
        signature: 华为短信测试
        #通道号
        sender: 8823040504797
        #模板ID 如果使用自定义模板发送方法可不设定
        template-id: acXXXXXXXXc274b2a8263479b954c1ab5
        #华为回调地址,如不需要可不设置或为空
        statusCallBack:
         #华为分配的app请求地址
        url: https://XXXXX.cn-north-4.XXXXXXXX.com:443
 ​

进阶配置

sms4j框架本身支持了很多的功能,还有内部的一些参数值也可以进行配置,下面我们还是以yml为例:

 sms:
     # 以下设置仅在开启短信发送限制后生效
     # 是否使用redis进行缓存 默认false
     redis-cache: false
     # 单账号每日最大发送量
     account-max: 20
     # 单账号每分钟最大发送
     minute-max: 2
     #默认厂商配置来源 此处为枚举设置,支持sql和配置文件,默认为从yml配置文件获取,如无需求可不改变
     config-type: config-file
     #启用框架banner打印,默认开启状态
     is-print: true
      #核心线程池大小
      corePoolSize: 10
      #最大线程数
      maxPoolSize: 30
      #队列容量
      queueCapacity: 50
      #设置线程池关闭的时候等待所有任务都完成再继续销毁其他的Bean
      shutdownStrategy: true

发送短信

sms4j对于各个厂商的常用的短信发送方法都进行了封装,我们可以很方便的进行使用。

示例:

 @RestController
 @RequestMapping("/test/")
 public class DemoController {
 ​
     // 测试发送固定模板短信
     @RequestMapping("/")
     public void doLogin(String username, String password) {
          //阿里云向此手机号发送短信
         SmsFactory.createSmsBlend(SupplierType.ALIBABA).sendMessage("18888888888","123456");
         //华为短信向此手机号发送短信
         SmsFactory.createSmsBlend(SupplierType.HUAWEI).sendMessage("16666666666","000000");
     }
 }

至此为止,一个完整的短信发送流程就完成了。你不需要对他进行额外的封装,并且他统一了各个厂商的发送差距,降低了学习成本,可以在几分钟内完成短信发送的完整流程。

当然,身为一个gitee推荐项目必然不可能只有这一点功能啦!他在2.2版本还新增了邮件发送的插件,秉承了sms4j一向极简的传统,让本应该100行完成的邮件发送,变得一行代码即可完成,在这里呢我就不多介绍了,有兴趣的小伙伴可以去仓库或者官网查看详细的使用教程(都是保姆级教程哦)

gitee仓库地址: https://gitee.com/dromara/sms4j

github仓库: https://github.com/dromara/sms4j

官方文档:https://wind.kim/

各位别忘了用你发财的小手给点点star哦!

 

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/247741/sms4j-2-2-0-released

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Apache Tomcat7、8、9(Java Web服务器)

Apache Tomcat7、8、9(Java Web服务器)

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。