需要引入jar包,如图所示
2.代码如下
public class MessageServiceImpl implements MessageService{
private static final Logger log = Logger.getLogger(MessageServiceImpl.class);
private final Integer NUM=6;
@Value("${ALI_DY_URL}")
private String url;
@Value("${ALI_DY_APPKEY}")
private String appkey;
@Value("${ALI_DY_SERCRET}")
private String secret;
@Override
public Map getMessageCode(String mobile) {
Map map = new HashMap();
//官网的URL---必须是这个
//成为开发者,创建应用后系统会自动生成--前面图片中有说明
// String appkey="23783581";
//创建应用后系统会自动生成--前面图片中有说明
// String secret="0c8dcab29910e5194aae719cf38f0732";
//随机生成 num 位验证码
String code="";
Random r = new Random(new Date().getTime());
for(int i=0;i
code = code+r.nextInt(10);
}
//需要log4j的Jar包--日志-可删
http://log.info("手机号为:"+mobile+",验证码为:"+code);
//短信模板的内容
String json="{\"code\":\""+code+"\",\"product\":\"云讯\"}";
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest();
//短信类型,传入值请填写normal
req.setSmsType("normal");
//签名名称
req.setSmsFreeSignName("云基壹号");
//短信模板变量,传参规则{"key":"value"},key的名字须和申请模板中的变量名一致,多个变量之间以逗号隔开。
req.setSmsParamString(json);
//短信接收号码
req.setRecNum(mobile);
//短信模板ID
req.setSmsTemplateCode("SMS_63765937");
AlibabaAliqinFcSmsNumSendResponse rsp = null;
try {
rsp = client.execute(req);
} catch (ApiException e) {
e.printStackTrace();
}
map.put("messageCode",code);
return map;
}
}