Java实现SMS短信通发送手机验证码案例讲解
作者:_Switch 时间:2022-05-14 22:37:57
注册网建短信通账号
链接:http://sms.webchinese.cn/
设置短信签名
注意不要乱写别的公司等,会被视为 *
设置短信密钥,发送时代替密码
Java方式实现
导入依赖 commons-httpclient-3.1.jar
编写SmsUtil工具类
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class SmsUtil {
private String uid;
private String key;
//用于后面的Spring注入方式实现
public int sendSms(String smsMob,String smsTxt ){
return sendSms(this.uid,this.key,smsMob,smsTxt);
}
public String getUid() {
return uid;
}
public void setUid(String uid) {
this.uid = uid;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public static void main(String[] args){
int n=sendSms("用户名","密钥","手机号","短信内容");
//如int n=sendSms("abc","55555","11234567574","验证码:8899");
//返回的是发送成功的短信条数
System.out.println("发送成功:"+n);
}
public static int sendSms(String uid,String key,String smsMob,String smsTxt )
{
PostMethod post =null;
try {
HttpClient client = new HttpClient();
post = new PostMethod("http://utf8.api.smschinese.cn");
post.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf8");//在头文件中设置转码
NameValuePair[] data = {
new NameValuePair("Uid", uid)
, new NameValuePair("Key", key)
, new NameValuePair("smsMob", smsMob)
, new NameValuePair("smsText", smsTxt)};
post.setRequestBody(data);
client.executeMethod(post);
return Integer.parseInt(post.getResponseBodyAsString());
}catch (Exception ex){
ex.printStackTrace();
throw new RuntimeException(ex);
}
finally {
post.releaseConnection();
}
}
}
前端交互
使用Spring进行注入
在applicationContext增加配置
定义用户名和密钥
编写控制层代码
到此这篇关于Java实现SMS短信通发送手机验证码案例讲解的文章就介绍到这了,更多相关Java实现SMS短信通发送手机验证码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
来源:https://blog.csdn.net/weixin_43981590/article/details/119296295
标签:Java,SMS,短信
0
投稿
猜你喜欢
Java实现驼峰和下划线互相转换的示例代码
2023-12-16 15:23:48
Spring cloud alibaba之Ribbon负载均衡实现方案
2021-11-08 20:05:23
Spring Boot Debug调试过程图解
2023-12-13 10:27:33
Mybatis如何获取最新插入数据的id
2023-02-26 08:15:20
Java8 HashMap键与Comparable接口小结
2023-11-29 10:10:31
Android仿微信朋友圈图片查看器
2023-01-27 18:07:20
Android开发自定义双向SeekBar拖动条控件
2022-06-02 03:55:25
java自定义注解实现前后台参数校验的实例
2023-04-27 23:53:21
Java程序员面试中的多线程问题总结
2021-12-12 07:48:33
详解SpringBoot和SpringBatch 使用
2023-08-17 19:00:38
Java适配器模式_动力节点Java学院整理
2021-09-06 10:50:53
JVM分配和回收堆外内存的方式与注意点
2021-07-25 08:53:34
Android新浪微博下拉刷新(最新消息显示在最上面)
2023-06-04 00:56:49
Android之网络通信案例分析
2023-10-21 02:13:20
Java无限级树(递归)超实用案例
2023-08-01 13:31:57
Android应用中实现手势控制图片缩放的完全攻略
2023-11-25 16:25:09
SeekBar拖动条的应用实例
2022-01-28 05:33:34
js+java实现登录滑动图片验证
2022-02-21 21:17:17
C#虚方法的声明和使用实例教程
2022-09-26 16:07:55
详解C#用new和override来实现抽象类的重写区别
2022-12-02 01:50:51