首页 > 其他 > 详细

TimerTask 定时任务demo

时间:2016-01-28 19:05:51      阅读:305      评论:0      收藏:0      [点我收藏+]
技术分享
 1 /*
 2 需求:
 3 在不借助spring容器的情况下实现web项目的定时任务
 4 */
 5 // 1. 创建一个执行定时任务的监听类
 6 import java.util.Calendar;
 7 import java.util.GregorianCalendar;
 8 import java.util.Timer;
 9 
10 import javax.servlet.ServletContextEvent;
11 import javax.servlet.ServletContextListener;
12 
13 import com.sgcc.service.PreDataService;
14 
15 public class TimeListener implements ServletContextListener {
16     private static Timer timer;
17     private static PreDataService task = new PreDataService();
18 
19     public void contextDestroyed(ServletContextEvent arg0) {
20         if (timer != null) {
21             timer.cancel();
22         }
23     }
24 
25     public void contextInitialized(ServletContextEvent arg0) {
26         try {
27             timer = new Timer(true);
28             GregorianCalendar now = new GregorianCalendar();
29             now.set(Calendar.HOUR_OF_DAY, 16);//
30             now.set(Calendar.MINUTE, 52);    //
31             now.set(Calendar.SECOND, 0);    //32             // task 要执行的对象,now.getTime() 系统当前时间  5000每隔5秒执行一次 如果是每天执行一次 设置为 1*1000*60*60*24
33             timer.schedule(task, now.getTime(),5000);
34         } catch (Exception e) {
35             e.printStackTrace();
36         }
37     }
38 }
39 // 2. 创建执行任务的类
40 public class PreDataService extends TimerTask {
41 
42     @Override
43     public void run() {
44                 // 调用需要处定时处理的相关方法
45         //BaseDao baseDao = new BaseDao();
46         //baseDao.saveCHELIANG();
47         //baseDao.savePAICHE();
48     }
49 
50 }
51     
TimerTask 定时demo
技术分享
1 <!-- 在web容器中添加一个listener 指定要执行的类即可 -->
2 <listener>
3     <listener-class>com.sgcc.timeUtil.TimeListener</listener-class>
4 </listener>
Web容器配置

 

用到的类:java.util.TimerTask

TimerTask 定时任务demo

原文:http://www.cnblogs.com/ejokovic/p/5166918.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!