网站建设资讯

NEWS

网站建设资讯

短信群发代码(java) 群发短信源码

java怎么实现群发短信的功能

JAVA实现短信群发的步骤:

创新互联建站专注于碌曲企业网站建设,响应式网站,商城系统网站开发。碌曲网站建设公司,为碌曲等地区提供建站服务。全流程按需规划网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

1、使用第三方短信平台服务商,接入短信服务;

2、调用短信提交页面发送请求;

3、服务器向第三方短信平台提交发送请求;

4、短信平台通过运营商将短信下发至用户的手机上。

以下是秒赛短信平台JAVA短信验证码接口代码示例

package test;

import java.io.IOException;

import java.io.UnsupportedEncodingException;

import java.net.URISyntaxException;

import java.net.URLEncoder;

import org.apache.commons.httpclient.HttpClient;

import org.apache.commons.httpclient.NameValuePair;

import org.apache.commons.httpclient.methods.PostMethod;

import org.apache.commons.lang3.StringUtils;

public class Apis {

// 短信发送接口的http地址,请咨询客服

private static String url = “xxxxxxxxxxxxxxxxxxxxxxxxxxxx”;

// 编码格式。发送编码格式统一用UTF-8

private static String ENCODING = “UTF-8”;

public static void main(String[] args) throws IOException, URISyntaxException {

// 账号

String account = “************************”;

// 密码

String pswd = “************************”;

// 修改为您要发送的手机号,多个用,分割

String mobile = “13*********”;

// 设置您要发送的内容

String msg = “【秒赛科技】您的验证码是:1234”;

// 发短信调用示例

System.out.println(Apis.send(account,pswd, mobile, msg));

}

/**

* 发送短信

*

* @param account

*            account

* @param pswd

*            pswd

* @param mobile

*            手机号码

* @param content

*            短信发送内容

*/

public static String send(String account,String pswd, String mobile, String msg) {

NameValuePair[] data = { new NameValuePair(“account”, account),

new NameValuePair(“pswd”, pswd),

new NameValuePair(“mobile”, mobile),

new NameValuePair(“msg”, msg),

new NameValuePair(“needstatus”, “true”),

new NameValuePair(“product”, “”) };

return doPost(url, data);

}

/**

* 基于HttpClient的post函数

* PH

* @param url

*            提交的URL

*

* @param data

*            提交NameValuePair参数

* @return 提交响应

*/

private static String doPost(String url, NameValuePair[] data) {

HttpClient client = new HttpClient();

PostMethod method = new PostMethod(url);

// method.setRequestHeader(“ContentType”,

// “application/x-www-form-urlencoded;charset=UTF-8”);

method.setRequestBody(data);

// client.getParams()。setContentCharset(“UTF-8”);

client.getParams()。setConnectionManagerTimeout(10000);

try {

client.executeMethod(method);

return method.getResponseBodyAsString();

} catch (Exception e) {

e.printStackTrace();

}

return null;

}

}

如何用Java实现短信自动发送功能

方法一:

1.web.xml中配置listener

listener

listener-class

cn.com.jxlife.shs.web.action.csinquiry.surrender.MyListener

/listener-class

/listener

2.创建listener

import java.util.Timer;

import javax.servlet.ServletContextEvent;

import javax.servlet.ServletContextListener;

public class MyListener implements ServletContextListener {

private Timer timer = null;

@Override

public void contextInitialized(ServletContextEvent sce) {

timer = new Timer(true);

//设置任务计划,启动和间隔时间

timer.schedule(new MyTask(), 0, 3*60*1000);

//3分钟

//timer.schedule(new MyTask(), 0, 3*60*1000);

//在1秒后执行此任务,每次间隔2秒

//timer.schedule(new MyTask(), 1000, 2000);

}

@Override

public void contextDestroyed(ServletContextEvent sce) {

timer.cancel();

}

}

3.创建启动的类MyTask

import java.util.Date;

import java.util.TimerTask;

public class MyTask extends TimerTask {

@Override

public void run() {

System.out.println("call at " + (new Date()));

}

}

方法二:

spring 下实现定时工作的调度框架quartz

· 1。从下载quartz的开源包

quartz-1.7.3.tar.gz

3.07M

· 2。从quartz-1.7.3.tar.gz 找到quartz-1.7.3.jar,放到项目的classpath下

(放到webroot/WEB-INF/lib)下

· 3。定义一个需要时间调度的程序

package com.machome.quartz;

public class CustomJob1 {

public void onTimeWork() {

System.out.println("数据备份任务启动");

System.out.println("...");

System.out.println("数据备份任务完成");

}

}

· 4。剩余的工作就都在spring xml文件里完成了

!-- 被调度的bean --

bean id="job1" class="com.machome.quartz.CustomJob1"/bean

!-- 定义任务对象 --

bean id="jobtask1"

class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"

!-- 被调度的bean --

property name="targetObject"

ref bean="job1" /

/property

!-- 被调度的bean中的被调度的方法 --

property name="targetMethod"

valueonTimeWork/value

/property

/bean

!-- 定义触发对象 --

bean id="trigger1"

class="org.springframework.scheduling.quartz.CronTriggerBean"

!-- 任务对象 --

property name="jobDetail"

ref bean="jobtask1" /

/property

!-- cron表达式 --

property name="cronExpression"

value10,15,20,25,30,35,40,45,50,55 * * * * ?/value

/property

/bean

!-- 调度对象 --

!-- 如果将lazy-init='false'那么容器启动就会执行调度程序 --

bean id="scheduler" lazy-init="false"

class="org.springframework.scheduling.quartz.SchedulerFactoryBean"

!-- 触发对象 --

property name="triggers"

list

ref bean="trigger1" /

/list

/property

/bean

· 5。 将spring 项目部署到TOMCAT或JBOSS服务器上

deploy项目

重启TOMCAT server

· 6。看结果:

cron表达式参考:Quartz的cron表达式

java怎样开发短信发送

是要群发短信,给不特定的人发短信,还是说给自己发短信,比如服务器故障了给自己发通知短信?


分享名称:短信群发代码(java) 群发短信源码
文章位置:http://njwzjz.com/article/doiehpc.html