JAVA如何实现发送短信

来源:互联网 发布:php 多用户商城 编辑:程序博客网 时间:2024/05/29 03:20

今天看到了一个需求,需要做一个发送短信的功能,网上找了找,大概有这几种方法:(1)使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册;(2)使用短信mao的方式进行短信的发送,这种方式应该是比较的常用,前提是需要购买硬件设备,呵呵(3)使用中国网建提供的SMS短信平台(申请账号地址:http://sms.webchinese.com.cn/),听说了网建提供了几条免费的短信,就上去试了试,调用了下他的接口(实为调用接口,其实就是拷贝了一段代码,呵呵~),代码如下,和大家分享一下:

import org.apache.commons.httpclient.Header;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.NameValuePair;import org.apache.commons.httpclient.methods.PostMethod;public class SendMsg_webchinese {    public static void main(String[] args) throws Exception {    HttpClient client = new HttpClient();    PostMethod post = new PostMethod("http://gbk.sms.webchinese.cn");    post.addRequestHeader("Content-Type",                "application/x-www-form-urlencoded;charset=gbk");// 在头文件中设置转码        NameValuePair[] data = { new NameValuePair("Uid", "本站用户名"),                new NameValuePair("Key", "接口安全秘钥"),                new NameValuePair("smsMob", "手机号码"),                new NameValuePair("smsText", "验证码:8888") };        post.setRequestBody(data);        client.executeMethod(post);        Header[] headers = post.getResponseHeaders();        int statusCode = post.getStatusCode();        System.out.println("statusCode:" + statusCode);        for (Header h : headers) {            System.out.println(h.toString());        }        String result = new String(post.getResponseBodyAsString().getBytes(                "gbk"));        System.out.println(result); // 打印返回消息状态        post.releaseConnection();    }

所需jar包

commons-codec-1.4

commons-httpclient-3.1.jar

commons-logging-1.1.1.jar

0 0
原创粉丝点击