JavaWebの3つの一般的なタイミングタスクの簡単な例
5410 ワード
一、JavaWebプロジェクトにjavaが持参したタイマーTimer
二、JavaWebプロジェクトにおけるSpringが持参するタイミングタスクの使用概要
三、タイミングタスクquartzの簡単な使用
//(1)、 :
package com.sundy.task;
import java.util.Timer;
import java.util.TimerTask;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
/**
*
* java Timer
* ServletContextListener
*
* ServletContextListener : ServletContext , Web 。
* ServletContextListener
* 1) Servlet web ,
* 2) Servlet web
*/
public class MyTimerTask implements ServletContextListener{
private Timer timer;
@Override
public void contextDestroyed(ServletContextEvent arg0) {
if(timer!=null) timer.cancel();
}
@Override
public void contextInitialized(ServletContextEvent arg0) {
timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
work();
}
}, 1000, 15*1000);// , 。
}
private void work() {
System.out.println(" ....");
}
}
//(2)、 web.xml
com.sundy.task.MyTimerTask
二、JavaWebプロジェクトにおけるSpringが持参するタイミングタスクの使用概要
1)、
1.1、 JavaBean
package com.sundy.task;
public class MyTask {
public void task(){
System.out.println(" ...");
}
}
1.2、 applicationContext.xml 。
1.3、 web :
contextConfigLocation
classpath:applicationContext.xml
org.springframework.web.context.ContextLoaderListener
(2)、
2.1、 JavaBean
package com.sundy.task;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class MyTask {
@Scheduled(cron="*/5 * * * * ?")
public void task1(){
System.out.println(" ...");
}
}
2.2、 applicationContext.xml
三、タイミングタスクquartzの簡単な使用
(1)、 :http://www.quartz-scheduler.org/downloads/
Quartz 、 :http://blog.csdn.net/luo201227/article/details/37511137
(2)、 ( :http://veiking.iteye.com/blog/2371511)
1.1、 JavaBean
package com.sundy.quartz;
public class SimpleJob {
public void runTask() {
System.out.println("runTask()....");
}
}
1.2、Spring