短信验证码mysql_短信验证码

public String sendCode(String phoneString){

String code=createRandomVcode();//验证码

// 用户名

String name="nangcheng";

// 密码

String pwd="405D046F8845AF375C5304360CCD";

// 电话号码字符串,中间用英文逗号间隔

StringBuffer mobileString=new StringBuffer(phoneString);

// 内容字符串

StringBuffer contextString=new StringBuffer(code);

// 签名

String sign="【海络】";

// 追加发送时间,可为空,为空为及时发送

String stime="";

// 扩展码,必须为数字 可为空

StringBuffer extno=new StringBuffer();

try {

String result=doPost(name, pwd, mobileString, contextString, sign, stime, extno);

log.info("Send code is"+result);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return code;

}

/**

* 发送短信

*

* @param name            用户名

* @param pwd            密码

* @param mobileString    电话号码字符串,中间用英文逗号间隔

* @param contextString    内容字符串

* @param sign            签名

* @param stime            追加发送时间,可为空,为空为及时发送

* @param extno            扩展码,必须为数字 可为空

* @return

* @throws Exception

*/

public static String doPost(String name, String pwd,

StringBuffer mobileString, StringBuffer contextString,

String sign, String stime, StringBuffer extno) throws Exception {

StringBuffer param = new StringBuffer();

param.append("name="+name);

param.append("&pwd="+pwd);

param.append("&mobile=").append(mobileString);

param.append("&content=").append(URLEncoder.encode(contextString.toString(),"UTF-8"));

param.append("&stime="+stime);

param.append("&sign=").append(URLEncoder.encode(sign,"UTF-8"));

param.append("&type=pt");

param.append("&extno=").append(extno);

URL localURL = new URL("http://api.daiyicloud.com/asmx/smsservice.aspx?");

URLConnection connection = localURL.openConnection();

HttpURLConnection httpURLConnection = (HttpURLConnection)connection;

httpURLConnection.setDoOutput(true);

httpURLConnection.setRequestMethod("POST");

httpURLConnection.setRequestProperty("Accept-Charset", "utf-8");

httpURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

httpURLConnection.setRequestProperty("Content-Length", String.valueOf(param.length()));

OutputStream outputStream = null;

OutputStreamWriter outputStreamWriter = null;

InputStream inputStream = null;

InputStreamReader inputStreamReader = null;

BufferedReader reader = null;

String resultBuffer = "";

try {

outputStream = httpURLConnection.getOutputStream();

outputStreamWriter = new OutputStreamWriter(outputStream);

outputStreamWriter.write(param.toString());

outputStreamWriter.flush();

if (httpURLConnection.getResponseCode() >= 300) {

throw new Exception("HTTP Request is not success, Response code is " + httpURLConnection.getResponseCode());

}

inputStream = httpURLConnection.getInputStream();

resultBuffer = convertStreamToString(inputStream);

} finally {

if (outputStreamWriter != null) {

outputStreamWriter.close();

}

if (outputStream != null) {

outputStream.close();

}

if (reader != null) {

reader.close();

}

if (inputStreamReader != null) {

inputStreamReader.close();

}

if (inputStream != null) {

inputStream.close();

}

}

return resultBuffer;

}

/**

* 转换返回值类型为UTF-8格式.

* @param is

* @return

*/

public static String convertStreamToString(InputStream is) {

StringBuilder sb1 = new StringBuilder();

byte[] bytes = new byte[4096];

int size = 0;

try {

while ((size = is.read(bytes)) > 0) {

String str = new String(bytes, 0, size, "UTF-8");

sb1.append(str);

}

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

is.close();

} catch (IOException e) {

e.printStackTrace();

}

}

return sb1.toString();

}

public static String createRandomVcode(){

//验证码

String vcode = "";

for (int i = 0; i < 4; i++) {

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

}

return vcode;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值