一、JAVA发送手机短信常见的有三种方式(如下所列):

使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册

使用短信mao的方式进行短信的发送,这种方式应该是比较的常用,前提是需要购买硬件设备。

二、一下整理了SMS短信验证过程:

1、首先需要带入三个包:

commons-httpclient-3.1.jar      commons-logging-1.0.4.jar      codec-1.3.jar

2、创建发送短信的类(一般写在工具类中),其中要通过短信内容要进行设置编码集为utf-8,调用第三方接口传参要按照第三方文档规范:

packagecom.demo.util;importjava.io.IOException;importjava.util.Map;importorg.apache.commons.httpclient.HttpClient;importorg.apache.commons.httpclient.HttpException;importorg.apache.commons.httpclient.SimpleHttpConnectionManager;importorg.apache.commons.httpclient.methods.GetMethod;importorg.apache.commons.httpclient.methods.PostMethod;public classHttpRequestUtil {/*** HttpClient 模拟POST请求*/

public static String postRequest(String url, Mapparams) {//构造HttpClient的实例

HttpClient httpClient = newHttpClient();//创建POST方法的实例

PostMethod postMethod = newPostMethod(url);//设置请求头信息

postMethod.setRequestHeader("Connection", "close");//添加参数

for (Map.Entryentry : params.entrySet()) {

postMethod.addParameter(entry.getKey(), entry.getValue());

}//使用系统提供的默认的恢复策略,设置请求重试处理,用的是默认的重试处理:请求三次

httpClient.getParams().setBooleanParameter("http.protocol.expect-continue", false);//接收处理结果

String result = null;try{//执行Http Post请求

httpClient.executeMethod(postMethod);//返回处理结果

result =postMethod.getResponseBodyAsString();

}catch(HttpException e) {//发生致命的异常,可能是协议不对或者返回的内容有问题

System.out.println("请检查输入的URL!");

e.printStackTrace();

}catch(IOException e) {//发生网络异常

System.out.println("发生网络异常!");

e.printStackTrace();

}finally{//释放链接

postMethod.releaseConnection();//关闭HttpClient实例

if (httpClient != null) {

((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown();

httpClient= null;

}

}returnresult;

}/*** HttpClient 模拟GET请求*/

public static String getRequest(String url, Mapparams) {//构造HttpClient实例

HttpClient client = newHttpClient();//拼接参数

String paramStr = "";for(String key : params.keySet()) {

paramStr= paramStr + "&" + key + "=" +params.get(key);

}

paramStr= paramStr.substring(1);//创建GET方法的实例

GetMethod method = new GetMethod(url + "?" +paramStr);//接收返回结果

String result = null;try{//执行HTTP GET方法请求

client.executeMethod(method);//返回处理结果

result =method.getResponseBodyAsString();

}catch(HttpException e) {//发生致命的异常,可能是协议不对或者返回的内容有问题

System.out.println("请检查输入的URL!");

e.printStackTrace();

}catch(IOException e) {//发生网络异常

System.out.println("发生网络异常!");

e.printStackTrace();

}finally{//释放链接

method.releaseConnection();//关闭HttpClient实例

if (client != null) {

((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown();

client= null;

}

}returnresult;

}

}

packagecom.demo.util;importjava.net.URLEncoder;importjava.util.HashMap;importjava.util.Map;public classSendMsgUtil {/*** 发送短信消息*/@SuppressWarnings("deprecation")public staticString sendMsg(String phones,String content){//短信接口URL提交地址utf-8

String url = "http://utf8.sms.webchinese.cn";

Map params = new HashMap();//用户名,例:abc123456

params.put("Uid", "yu3961520");//短信接口密钥 ,不是密码,例:79c3053154d313a34567

params.put("Key", "d41d8cd98f00b204e980");//手机号码,多个号码使用英文逗号进行分割

params.put("smsMob", phones);//将短信内容进行URLEncoder编码

params.put("smsText", URLEncoder.encode(content));returnHttpRequestUtil.getRequest(url, params);

}/*** 随机生成6位随机验证码*/

public staticString createRandomVcode(){//验证码

String vcode = "";for (int i = 0; i < 6; i++) {

vcode= vcode + (int)(Math.random() * 9);

}returnvcode;

}/*** 测试*/

public static voidmain(String[] args) {//多个手机号请用半角,隔开//例:System.out.println(sendMsg("18912345678,17812345678", "尊敬的用户,您的验证码为" + SendMsgUtil.createRandomVcode() + ",有效期为60秒,如有疑虑请详询400-3023-4493(客服电话)【中国联通】"));

System.out.println(sendMsg("电话号码", "*****,你的验证码为" + SendMsgUtil.createRandomVcode() + ",有效期为60秒,如有疑虑请详询(******)【签名,这是验证格式的必须填】"));

}

}

3、短信发送后返回值 说明 :

-1 没有该用户账户

-2 密钥不正确(不是用户密码)

-3 短信数量不足

-11 该用户被禁用

-14 短信内容出现非法字符

-41 手机号码为空

-42 短信内容为空

大于0 短信发送数量

中国网建java发送短信_短信验证登陆-中国网建提供的SMS短信平台相关推荐

  1. java中用中国网建提供的SMS短信平台发送短信

    接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...

  2. 中国网建 java_java中用中国网建提供的SMS短信平台发送短信

    接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...

  3. java发送gmail邮件_如何从R和Gmail发送电子邮件

    java发送gmail邮件 在您的R人生的某个时刻,您可能希望与不使用R的同事共享分析结果. 有很多方法可以做到这一点. 最简单(也是最便宜)的方法之一是通过电子邮件发送结果. 但它是一种悲哀自动化您 ...

  4. 用java编写验证码程序_编写,验证和分析实时Java应用程序

    本文是" 用实时Java开发"系列的第三篇也是最后一部分,展示了如何设计,编写,验证和分析基本的实时应用程序. 我们将说明: 应用程序的时间和性能要求. 为什么传统的非实时Java ...

  5. 用Java调用中国网建提供的SMS短信平台接口实现向移动端发送短信

    1.相关知识请到http://sms.webchinese.cn/api.shtml#top3查看 注意该程序是调用的中国建网提供的接口,如果需要的话,新用户要注册,才能查看密钥,添加密钥才可以使用 ...

  6. 中国网建提供的SMS短信发送

    一个简单的发送短信的小demo 第一步: 兄弟们,首先你们去中国网建的官网去注册一个账户:网址http://sms.webchinese.cn/reg.shtml 第二步: 注册完成之后会有免费的测试 ...

  7. java发送hotmail邮件_利用javamail收取Hotmail的退信

    利用javamail收取Hotmail的退信 (2007-04-05 23:44:19) Hotmail 是我最常用的Email Client.虽然时下hotmail的容量是小了些,速度也常常慢得让人 ...

  8. java发送get请求_如何快速掌握Java技术 Tomcat知识点有哪些

    如何快速掌握Java技术?Tomcat知识点概述有哪些?每一个对JavaWeb有所了解的人,都知道Tomcat是干什么用的!对,它是一个Servlet和JSP容器.然而,即使看过.使用过Tomcat, ...

  9. java发送outlook邮件_通过Java代码发送OutLook邮件

    准备 我们想通过Java代码实现发送OutLook邮件,必须准备以下材料: OutLook邮箱 目标邮箱 查看OutLook邮箱信息 打开OutLook邮箱,在Settings中搜索或找到SMTP: ...

最新文章

  1. 对服务器文件夹写,服务器文件夹写入权限设置
  2. 在Linux里设置环境变量的方法(export PATH)
  3. 智课雅思词汇---五、优词词根字典
  4. html中如何让字段闪烁,Javascript结合CSS实现边框闪烁提示
  5. bimmercode刷隐藏教程_PS教程:快速提取人物像素,制作人物海报主体,简单易学...
  6. StringStringBuilder的使用
  7. Python学习笔记:pandas初体验
  8. python获取局域网在线主机_pythond的icmp广播报获取局域网主机IP
  9. Tomcat pool 发布脚本
  10. 安装jdk配置环境变量JAVA_HOME不起作用
  11. Dell台式机重装win 10系统之后开机报错
  12. MATLAB机器学习决策树网格法优化参数学习笔记
  13. SharePoint使用CamlQuery查询人员和组
  14. c语言中的矩阵求逆程序,C语言矩阵求逆
  15. 【C++学习笔记】基本内置类型和变量
  16. 绕过CDN查找真实IP方法总结
  17. gmail imap_阻止带有Gmail IMAP的Outlook在待办事项栏中显示重复的任务
  18. 【sql注入】二次注入
  19. IEEE论文投稿模板及分类简介
  20. 相位式激光测距法中相位产生原理

热门文章

  1. 【Java】数据结构—— 单链表和双链表
  2. css-阴影和超链接伪类
  3. gitee提交代码_git 版本控制,github和gitee
  4. 如何备份数据_如何通过归档、备份和灾难恢复实现多云数据保护
  5. php计算结果排序,php-按从数组计算出的值对数组进行排序
  6. 天宫初级认证答案_百度初级认证试题答案
  7. oracle数据库创建回滚,如何重建Oracle数据库的回滚段?
  8. php抽象方法db,PHP笔记之抽象方法抽象类
  9. python自动化_python自动化测试-Behave框架的用法介绍 - python测试学习
  10. java.close用法_void close()