spring定时任务小例子
来源:互联网 发布:medusa分析软件 编辑:程序博客网 时间:2024/05/10 11:30
闲着写了一个spring定时任务的小例子,也积累一下,免得做android开发把javaEE的都忘记了!下面是spring定时任务的代码:
这个是一个很简单的MyTime类,里面有一个方法就是得到当前时间并且打印出来
package com.zhangkeinfo.spring.time;import java.sql.Timestamp;/** * spring 定时任务 * @author spring sky * Email:vipa1888@163.com * QQ:840950105 * */public class MyTime {public void getTime(){Timestamp tt = new Timestamp(System.currentTimeMillis());System.out.println(tt.toString());}}
核心的代码:
package com.zhangkeinfo.spring.time;import org.quartz.JobExecutionContext;import org.quartz.JobExecutionException;import org.springframework.scheduling.quartz.QuartzJobBean;/** * spring 定时任务 * @author spring sky * Email:vipa1888@163.com * QQ:840950105 * #####spring 定时任务需要继承QuartzJobBean 这种方式是最常用的! * #####同时就实现了抽象方法executeInternal * */public class UpdateTime extends QuartzJobBean{private MyTime myTime;/** * 依赖注入myTime * @param myTime */public void setMyTime(MyTime myTime) {this.myTime = myTime;}/** * 我在这个定时任务里面只做了一个很简单的事情,就是打印出当前的时间! */@Overrideprotected void executeInternal(JobExecutionContext context)throws JobExecutionException {myTime.getTime();}}
上面需要注意的是参数:context,这个参数有很大的作用,就是可以得到一些重要的值,context有一个get(key)方法,这个就是可以得到一个需要的数据!
applicationContext.xml中的配置:
<!-- spring定时任务的配置 --><bean class="com.zhangkeinfo.spring.time.MyTime" id="myTime"/><!-- 基础的配置 相关类的注入 --><bean class="org.springframework.scheduling.quartz.JobDetailBean" id="MyTimeSpringJob"><property name="jobClass" value="com.zhangkeinfo.spring.time.UpdateTime"/> <!-- value中配置的是我自己写的UpdateTime类 name就是spring的jobClass --><property name="jobDataAsMap"> <!-- 当定时任务中需要注入别的bean的时候,就可以在这里注入,我里面输入了一个MyTime类 --><map><entry key="myTime" value-ref="myTime"/></map></property></bean><!-- 相关的时间配置 --><bean class="org.springframework.scheduling.quartz.SimpleTriggerBean" id="MyTimesimpleTriggerBean"><property name="jobDetail" ref="MyTimeSpringJob"/> <!-- 给MyTimeSpringJob配置时间信息,name的jobDetail是spring内部需要注入的名字 --> <property name="repeatInterval" value="1000"/> <!--相隔1000毫秒执行一次 --> <property name="startDelay" value="5000"/> <!--tomcat或者jboss启动5000毫秒后开始执行任务 --></bean> <!-- 当前注释的内容配置的功能很强大,还可以配置星期几,哪一天,那一年,或者那一日的那一秒都是可以配置的 当前配置的是:每个周的星期天23:59:50 这个顺序是倒序配置的 value中的内容: 第6位:的1代表星期天,在国外星期天才是每个周的开始!第5位: *代表所有月的星期天第4位:?代表也没有具体到某日的星期天第3位:23代表23点,注意:采用24小时第2位:59代表分钟第1位:50代表秒<bean class="org.springframework.scheduling.quartz.CronTriggerBean"><property name="jobDetail" ref="MyTimeSpringJob"/> <property name="cronExpression" value="50 59 23 ? * 1"/> </bean> --><!-- ****************启动定时任务***************** --><bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"><property name="triggers"><list><ref bean="MyTimesimpleTriggerBean"/></list></property></bean>
上面的spring xml文件中的基本配置,我已经详细说明了里面的参数,学习也在于积累,只有积累了,才会不断的成长!
- spring定时任务小例子
- spring 定时任务例子
- Oracle 定时任务小例子
- java定时任务小例子
- Spring定时任务的简单例子
- Spring定时任务的简单例子 .
- Spring定时任务的简单例子
- Spring定时任务的简单例子(转载)
- Spring定时任务的简单例子
- Spring定时任务的简单例子
- Spring定时任务的简单例子(转载)
- Spring定时任务的简单例子
- Spring定时任务的简单例子
- Spring定时任务的简单例子(转载)
- Spring Quartz简单例子,定时任务
- Spring定时任务的简单例子
- Spring定时任务的简单例子(转载)
- Spring集成Quartz定时任务例子
- Hibernate POJO为什么要实现Serializable接口
- Pinterest访问量6个月增长40倍
- java学习笔记:关于IO转换流InputStreamReader和OutputStreamWriter
- VIM翻页
- oracle 大对象(lob)类型使用性能测试
- spring定时任务小例子
- CSS+DIV 下拉输入菜单
- java类中日期增加一天或一月的方法
- web idl 接口定义语言数据类型与 C++绑定关系
- JDBC--Statement,PreparedStatement,CallableStatement的区别
- QT Creator style sheet(一) 以及加载外部qss方法
- 推荐一款不错的网站压力测试工具webbench
- Mule ESB Configuration Patterns 配置摘要
- php中0,'',null,false,true,FLASE,TREU,array()的相等恒等学习