首先,要创建你自己想要定时的实体类

@Service("smsService")
@Transactional
public class SmsSendUtil {

@Autowired
private SmsDao smsDao;

@Autowired
private ShortLinkService shortLinkService;

private Logger logger = Logger.getLogger(this.getClass());

下面的这个方法要是无参的
public synchronized void taskSendSms() {
Map<String, Object> columnMap = new HashMap<String,Object>();
columnMap.put("status", "0");
List<Sms> smsList = smsDao.selectByMap(columnMap);
for (Sms sms : smsList) {
logger.info("开始发送短信:手机号:"+sms.getPhone()+",短信内容:"+sms.getSendtext());
String result = "";
try {
result = shortLinkService.sengMessage(sms.getPhone(), sms.getSendtext());
} catch (Exception e) {
logger.error("短信发送失败!");
logger.info("失败短信:手机号:"+sms.getPhone()+",短信内容:"+sms.getSendtext());
e.printStackTrace();
}
Sms upSms = new Sms();
upSms.setId(sms.getId());
sms.setSendcount(sms.getSendcount()+1);
sms.setSendtime(new Date());
if ("success".equals(result)) {
sms.setStatus("1");
smsDao.update(sms, upSms);
}else {
sms.setStatus("0");
smsDao.update(sms, upSms);
}
}
}
}

第二步就是在配置文件中配置定时任务

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">

<!-- 定时任务获取增量数据-->
<bean id="sendFailedReturnDataRecord1" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<bean id="sendFailedReturnDataRecord2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<bean id="sendFailedReturnDataRecord3" class="ins.platform.common.util.SmsSendUtil"><!-- 类位置 -->
</bean>
</property>
<property name="targetMethod">
<value>taskSendSms</value> <!-- 方法名 -->
</property>
</bean>
</property>
<property name="cronExpression" value="0 30 * * * ? *"></property> <!-- 执行频率,每小时的第一秒触发 -->
</bean>

<!-- 设置调度 -->
<bean id="SpringJobSchedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="sendFailedReturnDataRecord1"/>
</list>
</property>
</bean>
</beans>

最后一步就是要在spring配置文件中将上述配置引入,就会开启定时了

最新文章

  1. [LeetCode] Happy Number 快乐数
  2. NSCache
  3. spring+redis
  4. js调用.net后台事件、后台调用前台以及js调用服务器控件
  5. 关于selenium2(webdriver)自动化测试过程中标签页面或者窗口切换的处理解决方案
  6. 2. Transcribing DNA into RNA
  7. vs2010 打包 SQL server compact 4.0 驱动程序
  8. Shell配置_配置IP
  9. 网络爬虫2--PHP/CURL库(client URL Request Library)
  10. 书摘及理解:Servlet与JSP的关系
  11. 《黄聪:手机移动站SEO优化教程》1、为什么要做手机移动端网站
  12. windows8设置环境变量
  13. PHP第六课 使用方法数组
  14. 表单验证--通过原生js模仿ajax的异步交互
  15. Go语言的切片
  16. redis 报Operation against a key holding the wrong kind of value警告的解决方法
  17. [Python Study Notes]WdSaveFormat 枚举
  18. java获取当前系统时间
  19. sench touch 时间插件 扩展
  20. 20155215 2016-2017-2 《Java程序设计》第7周学习总结

热门文章

  1. Java面试之基础篇(2)
  2. Spring 自动代理
  3. React使用的思考总结
  4. 软件工程 in MSRA 第一周博客作业
  5. 【WINDOWS】设置路由表实现有线内网,无线外网
  6. opencv入门教程三
  7. python之assert
  8. Linux下JDK1.7升级1.8版本
  9. CG-CTF | 综合题
  10. 使用xshell远程连接Linux