SpringBoot整合阿里云发送短信 (demo)

news2024/11/18 1:42:48

1. 登录阿里云 - 搜索【短信服务】- 套餐【立即购买】

2. 添加签名

国内消息 - 签名管理 - 添加签名

3. 添加模板

国内消息 - 模板管理 - 添加模板

模板详细

4. 依赖
<!--阿里云短信服务-->	
<dependency>
	<groupId>com.aliyun</groupId>
	<artifactId>dysmsapi20170525</artifactId>
	<version>2.0.22</version>
</dependency>

5. SmsUtils

import com.aliyun.dysmsapi20170525.Client;
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.teaopenapi.models.Config;

public class SmsUtils {

    private static final String accessKeyId = "你的accessKeyId ";
    private static final String accessKeySecret = "你的accessKeySecret ";

   private static Client createClient() throws Exception {
        Config config = new Config()
                .setAccessKeyId(accessKeyId)
                .setAccessKeySecret(accessKeySecret);
        // 固定
        config.endpoint="dysmsapi.aliyuncs.com";
        return  new Client(config);
    }

    public static SendSmsResponse sendSms(String signName,String templateCode,String phoneNUmber,String templateParam) {
        Client  client = null;
        try {
            client = createClient();

        SendSmsRequest sendSmsRequest = new SendSmsRequest();
        // 模板code
        sendSmsRequest.setTemplateCode(templateCode);
        // 关联签名 (获取: 签名管理 - 签名名称)
        sendSmsRequest.setSignName(signName);
        // 用户手机号
        sendSmsRequest.setPhoneNumbers(phoneNUmber);
        // 发送的内容
        sendSmsRequest.setTemplateParam(templateParam);
        SendSmsResponse  response = client.sendSms(sendSmsRequest);
        return response;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

}

6. service

    public void sendSms(){
        // 用户手机号
        String phoneNumber = wxUser.getPhoneNumber();
        // 关联签名 (获取: 签名管理 - 签名名称)
        String signName ="心理树服务通知";
        // 模板code
        String templateCode = "SMS_xxxxxxxxx";
        // 发送内容
        JSONObject param = new JSONObject();
        param.set("name",wxUser.getAliasName());
        param.set("time1",order.getSettingDate()+" "+startTime);
        param.set("time2",endTime);
        param.set("expert",order.getExpertName());
        SendSmsResponse sendSmsResponse = SmsUtils.sendSms(signName,templateCode,phoneNumber,param.toString());
        log.info("短信响应message: {},短信响应code: {}",sendSmsResponse.getBody().message,sendSmsResponse.getBody().code);
    }

7. 短信通知

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1039970.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中国城市政商关系健康总指数、方面指数及一级指标得分2018

中国城市政商关系健康总指数、方面指数及一级指标得分2018 1、指标&#xff1a;省份代码、省份、城市代码、城市名称、政商关系健康指数、亲近指数、清白指数、政府关心、政府服务、企业税负、政府廉洁度、政府透明度 2、范围&#xff1a;290个地级市 3、数据说明&#xff1…

IDEA新建.xml文件显示为普通文本

情况如下&#xff1a; 1. 在XML文件中添加*.xml的文件名模式 2. 在文本中&#xff0c;选中*.xml进行删除

MySQL篇-MySQL存储引擎详解

MySQL 执行流程是怎样的&#xff1f; 可以看到&#xff0c; MySQL 的架构共分为两层&#xff1a;Server 层和存储引擎层&#xff0c; Server 层负责建立连接、分析和执行 SQL。MySQL 大多数的核心功能模块都在这实现&#xff0c;主要包括连接器&#xff0c;查询缓存、解析器、…

Euro-NCAP-HWA测试流程中文版V1.1(2023发布)

定义 在本协议中,使用了以下术语: Vehicle undertest (VUT) – 指根据本规程测试的车辆,车上有碰撞前的碰撞缓解或避免系统 Global VehicleTarget (GVT) – 指本协议中使用的车辆目标,其定义见TB025—Euro-NCAP全球车辆目标规范v1.0 辅助其他车辆(SOV)--指最新的 AEB …

Spring源码相关

总分结构回答&#xff0c;突出关键接口、类、方法名 run -> AbstractApplicationContext.refresh&#xff08;&#xff09;程序的入口 在IOC中的操作都是基于DefaultListableBeanFactory bd对象保存在map集合中 refresh方法宝包括了整个Spring的执行流程和bean的完整生命…

【Postman-windows-9.12.2版本安装与汉化】

Postman-windows-9.12.2版本安装与汉化 想用英文版本的可以直接点击如下链接下载最新版本 官网最新版本(无法汉化)&#xff1a;https://www.postman.com/downloads/ 如果想要汉化的就不能使用最新版本&#xff0c;因为最新版本没有汉化包可以用 汉化包和postman的版本必须是…

RFID技术在危险品仓库中的综合应用

危险仓库内的危化品存放、隔离、堆放数量等需要严格的管控。危险化学品自身所具有的易爆、易燃、毒害、腐蚀、放射等性导致其在生产、经营、存储、运输、使用、废弃处置的过程中安全尤为重要&#xff0c;RFID技术应用避免人为误操作&#xff0c;实现危险品的自动安全核查和规范…

win10家庭版安装docker desktop问题

一、WSL kernel version too low 1、power shell,运行升级命令 wsl --update 2、官网下载wsl2更新包安装 二、Unexcepted WSL error 未找到解决方法&#xff0c;看来只能老老实实用win专业版了。

用go实现http服务端和请求端

一、概述 本文旨在学习记录下如何用go实现建立一个http服务器&#xff0c;同时构造一个专用格式的http客户端。 二、代码实现 2.1 构造http服务端 1、http服务处理流程 基于HTTP构建的服务标准模型包括两个端&#xff0c;客户端(Client)和服务端(Server)。HTTP 请求从客户端…

单片机涉及到这么多行业?

单片机在众多行业中都有广泛应用。汽车电子领域使用单片机来控制引擎、制动系统、安全系统等&#xff0c;提升车辆性能和安全性。不懂的可以看看这一套学习资料包&#xff0c;里面涵盖了一整个嵌入式行业教学资料&#xff0c;不论是小白入门还是精通进阶都包括在内&#xff0c;…

全面提升AD域安全认证 | 竹云IDaaS

传统的微软Active Directory目录已无法适应企业多样化的业务需求&#xff0c;借助身份云您可以快速整合企业本地、云端资源&#xff0c;从而使AD域管理变得更简单、安全、高效。 企业面临的挑战 AD域无法整合现代化系统 AD域仅支持 LDAP 、Kerberos 协议&#xff0c;不能整合…

uniapp 路由模式 history

亲测、比如 uniapp 的 H5 配置&#xff1a; nginx 配置如下&#xff0c;只影响网站下某个目录&#xff1a; location ^~ /test {try_files $uri $uri/ /test/index.html; }

HAProxy Data Plane API 实现对 haproxy 的配置管理

文章目录 前言一、安装1. 下载HAProxy Data Plane API2. 创建 Data Plane API 配置文件 /etc/haproxy/dataplaneapi.hcl3. 修改haproxy的配置文件 二、简单使用1. 查询请求2. 提交修改请求 总结 前言 我们平时对 haproxy 配置的修改&#xff0c;往往是 SSH 连接进去节点&#…

竞赛 基于深度学的图像修复 图像补全

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学的图像修复 图像补全 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f9ff; 更多资料, 项目分享&#xff1a; https://gitee.com/dancheng-se…

孙哥Spring源码第25集

第25集、处理代理中获取代理进行方法调用 0、问题所在 1、实现ApplicationContextAware接口实现代理 它的处理是在ApplicationContextAware中处理的 2、ExposeProxy分析 整体 分析 如何设置成了false就会有下面的问题 3、使用EnableAspectJAutoProxy解决代理问题 4、到底如何…

让自己敲代码的速度起飞

前言 打字速度可以说是成为一名程序员的基本功&#xff0c;程序员的打字速度在工作中越来越重要&#xff0c;下面就为大家分享一下我在联系打字速度的时候一些小经验&#xff0c;希望对大家有帮助。 刚开始学习编程的时候&#xff0c;我每天都会抽出1个小时进行打字练习&…

微信小程序实现拍照并拿到图片对象功能

微信小程序提供了函数chooseImage 我们可以在wxml中定义一个按钮 <view><button bindtap"photograph">拍照</button> </view>这里绑定了一个点击事件 叫 photograph 然后 我们在js中编写代码如下 //import { getAll } from "../../ap…

在B站上如何把已经上传的视频做成合集?

参考视频: 【在B站上如何把已经上传的视频做成合集&#xff1f;】 https://www.bilibili.com/video/BV1Uf4y1G7eR/?share_sourcecopy_web&vd_source8af85e60c2df9af1f0fd23935753a933 【B站投稿视频合集的几种方式最全攻略】 https://www.bilibili.com/video/BV1jZ4y1h7…

LLM-TAP随笔——大语言模型基础【深度学习】【PyTorch】【LLM】

文章目录 2.大语言模型基础2.1、编码器和解码器架构2.2、注意力机制2.2.1、注意力机制&#xff08;Attention&#xff09;2.2.2、自注意力机制&#xff08;Self-attention&#xff09;2.2.3、多头自注意力&#xff08;Multi-headed Self-attention&#xff09; 2.3、transforme…

Unity之Hololens如何实现3D物体交互

一.前言 什么是Hololens? Hololens是由微软开发的一款混合现实头戴式设备,它将虚拟内容与现实世界相结合,为用户提供了沉浸式的AR体验。Hololens通过内置的传感器和摄像头,能够感知用户的环境,并在用户的视野中显示虚拟对象。这使得用户可以与虚拟内容进行互动,将数字信…