JAVA定时执行任务的三种方法
2015-06-02 10:35
615 查看
1.利用 java.util.Timer
这个方法应该是最常用的,不过这个方法需要手工启动你的任务
这里的ListByDayTimerTask类必须extends TimerTask里面的run()方法,然后再run方法里面
2.web容器环境中可以使用上下文监听器ServletContextListener
这个方法在web容器环境比较方便,这样,在web server启动后就可以自动运行该任务,不需要手工操作。将ListByDayListener implements ServletContextListener接口,在contextInitialized方法中加入启动Timer的代码,在contextDestroyed方法中加入cancel该Timer的代码;然后在web.xml中,加入listener:
3.使用spring框架的方式:
如果你用spring,那么不需要写Timer类,在配置文件schedulingContext-timer.xml中加入下面的内容就可以了:
这个方法应该是最常用的,不过这个方法需要手工启动你的任务
Timer timer=new Timer(); timer.schedule(new ListByDayTimerTask(),10000,86400000);
这里的ListByDayTimerTask类必须extends TimerTask里面的run()方法,然后再run方法里面
写你要执行的内容。
2.web容器环境中可以使用上下文监听器ServletContextListener
这个方法在web容器环境比较方便,这样,在web server启动后就可以自动运行该任务,不需要手工操作。将ListByDayListener implements ServletContextListener接口,在contextInitialized方法中加入启动Timer的代码,在contextDestroyed方法中加入cancel该Timer的代码;然后在web.xml中,加入listener:
< listener> < listener-class>com.qq.customer.ListByDayListener< /listener-class> < /listener>
3.使用spring框架的方式:
如果你用spring,那么不需要写Timer类,在配置文件schedulingContext-timer.xml中加入下面的内容就可以了:
< ?xml version="1.0" encoding="UTF-8"?> < !DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> < beans> < bean id="timer" class="org.springframework.scheduling.timer.TimerFactoryBean"> < property name="scheduledTimerTasks"> < list> < ref local="MyTimeTask1"/> < /list> < /property> < /bean> < bean id="MyTimeTask" class="com.qq.timer.ListByDayTimerTask"/> < bean id="MyTimeTask1" class="org.springframework.scheduling.timer.ScheduledTimerTask"> < property name="timerTask"> < ref bean="MyTimeTask"/> < /property> < property name="delay"> < value>10000< /value> < /property> < property name="period"> < value>86400000< /value> < /property> < /bean> < /beans>
相关文章推荐
- JAVA持久层框架的概述(ibatis>>mybatis)
- OpenJDK与HashMap
- 【浏览器选择文件夹】springMVC上传篇
- java中 Process的使用
- eclipse怎么设置选中文件编辑的文件时,自动关联选择左侧树里的文件?
- Java中的相对路径与绝对路径
- 解析JDK、J2EE、J2SE、J2ME的区别
- struts2重定向传参数配置
- Java日志性能
- eclipse使用笔记(一):eclipse闪退解决办法
- java个人学习笔记:javaBean
- SpringMVC+ajaxFileUpload上传图片 IE浏览器弹下载框问题解决方案
- 汉诺塔递归算法
- Java—static、this、super用法总结
- JAVA 条件表达式 陷阱
- spring MVC配置详解
- java webservice 注解
- spring注入bean两种方式(属性注入,构造器注入)
- 疯狂Java学习笔记(68)-----------synchronized
- Java并发编程-CAS