RT,java web利用Timer schedule自动执行任务,可以循环执行或者只执行一次,当然实际使用中一般用的都是循环执行。
直接上代码,简单明了
- package com.tcps.center.util;
- import java.util.Timer;
- import javax.servlet.ServletContextEvent;
- import javax.servlet.ServletContextListener;
- public class AutoRun implements ServletContextListener {
- private Timer timer = null;
- public void contextInitialized(ServletContextEvent event) {
- timer = new Timer(true);
- /*
- * 这里开始循环执行 MyJob()方法了
- * schedule(param1, param2,param3)这个函数的三个参数的意思分别是:
- * param1:你要执行的方法;param2:延迟执行的时间,单位毫秒;param3:循环间隔时间,单位毫秒
- */
- timer.schedule(new MyJob(), 0, 86400000);
- }
- public void contextDestroyed(ServletContextEvent event) {
- timer.cancel();
- }
- }
- package com.tcps.center.util;
- import java.util.TimerTask;
- public class MyJob extends TimerTask{
- @Override
- public void run() {
- // TODO 你想要做的事情
- }
- }
- <listener>
- <listener-class>com.tcps.center.util.AutoRun</listener-class>
- </listener>
哦了,that's all, over