首先导入maven
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>dysmsapi20170525</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>tea-openapi</artifactId>
<version>0.2.2</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>tea-console</artifactId>
<version>0.0.1</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>tea-util</artifactId>
<version>0.2.13</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>tea</artifactId>
<version>1.1.14</version>
</dependency>
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.tea.TeaModel;
import com.aliyun.teaopenapi.models.Config;
import com.ruoyi.common.utils.StringUtils;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class AliyunSendSms {
public static final String ACCESSKEYID = "ACCESSKEYID ";
public static final String ACCESSKEYSECRET = "ACCESSKEYSECRET ";
public static String SIGNNAME = "中国移动";
//欠费提示
public static final String EXPERT_QUEST = "SMS_123456";
/**
* 使用AK&SK初始化账号Client
*
* @return Client
* @throws Exception
*/
public static com.aliyun.dysmsapi20170525.Client createClient() throws Exception {
Config config = new Config()
// 您的AccessKey ID
.setAccessKeyId(ACCESSKEYID)
// 您的AccessKey Secret
.setAccessKeySecret(ACCESSKEYSECRET);
// 访问的域名
config.endpoint = "dysmsapi.aliyuncs.com";
return new com.aliyun.dysmsapi20170525.Client(config);
}
public static Map<String, Object> sendExpertQuest(String mobile, String userName) {
//这是必须是json格式 对应你的短信模板内的参数
//例如 content内的name就是模板所需要的参数
String content = "{\"name\":\""+userName+"\"}";
com.aliyun.dysmsapi20170525.Client client;
Map<String, Object> map = new HashMap<String, Object>();
map.put("code", "500");
map.put("msg", "发送失败!");
try {
//发送短信记录与回调
client = AliyunSendSms.createClient();
SendSmsRequest sendSmsRequest = new SendSmsRequest();
sendSmsRequest.setPhoneNumbers(mobile);
sendSmsRequest.setSignName(SIGNNAME);
sendSmsRequest.setTemplateCode(EXPERT_QUEST);
System.out.println(content);
sendSmsRequest.setTemplateParam(content);
SendSmsResponse resp = client.sendSms(sendSmsRequest);
if("OK".equals(resp.getBody().getCode())) {
map.put("code", "0");
map.put("msg", "发送成功!");
}
com.aliyun.teaconsole.Client.log(com.aliyun.teautil.Common.toJSONString(TeaModel.buildMap(resp)));
} catch (Exception e) {
e.printStackTrace();
}
return map;
}
}