最新Spring-4.3.10和quartz-2.2.3整合示例
来源:互联网 发布:fire fox打不开淘宝 编辑:程序博客网 时间:2024/06/01 15:24
笔记
Spring 为简化 Quartz 的操作提供了相关支持类Quartz Scheduler 。方便我们进行任务调度的开发。网上版本大都一大抄,而且时间久远,无奈去看官方文档,还好Google翻译很给力,钻研了一下午,搞定~配置了两个定时任务,一个是直接调用方法不需要继承任何类的简单任务,另一个是功能增强的继承QuartzJobBean的定时任务,可以满足一般需求了。
jar包准备
<!--Quartz核心库-->quartz-2.2.3.jar<!--日志记录,至少需要使用sl4j-api.jar文件,不然会报错-->log4j-1.2.16.jarlog4j-core-2.8.2.jarlog4j-api-2.8.2.jarslf4j-api-1.7.7.jar<!--如果log4j实现了slf4j,那么需要加个转换器,不然Quartz报错信息可能会看不到-->slf4j-log4j12-1.7.7.jar<!--Spring jar包-->spring-core-4.3.10.jarspring-context-support-4.3.10.jarspring-context-4.3.10.jar
核心Spring配置文件
<!--使用简单作业详情--> <bean id="simpleJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <!--配置简单作业的目标类--> <property name="targetObject" ref="mySimpleJob"/> <!--配置简单作业的目标方法--> <property name="targetMethod" value="execute"/> <!--false表示等上一个任务执行完后再开启新的任务--> <property name="concurrent" value="false"/> </bean> <!--使用定时作业详情--> <bean id="cronJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean"> <!--配置简单作业的目标类--> <property name="jobClass" value="com.cheng.utils.quartz.MyCronJob"/> <!--配置耐久性,如果一个任务不是durable,那么当没有Trigger关联它的时候,它就会被自动删除--> <property name="durability" value="true"/> </bean> <!--配置简单触发器--> <bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> <property name="jobDetail" ref="simpleJobDetail"/> <!-- 延迟3s执行 --> <property name="startDelay" value="3000"/> <!-- 每隔10s执行一次 --> <property name="repeatInterval" value="10000"/> </bean> <!--配置定时触发器--> <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> <property name="jobDetail" ref="cronJobDetail"/> <!--每隔5s执行一次--> <property name="cronExpression" value="*/5 * * * * ?"/> </bean> <!--配置调度器工厂--> <bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <!--配置触发器--> <property name="triggers"> <list> <ref bean="simpleTrigger"/> <ref bean="cronTrigger"/> </list> </property> </bean>
任务详情类
/** * 定时任务 */public class MyCronJob extends QuartzJobBean { private static int times = 0; @Override protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException { SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); String time = sdf.format(new Date()); System.out.println("【" + time + "】定时任务第【" + ++times + "】次执行……"); }}/** * 简单任务 */@Component("mySimpleJob")public class MySimpleJob { private static int times = 0; public void execute() { SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); String time = sdf.format(new Date()); System.out.println("【" + time + "】简单任务第【" + ++times + "】次执行……"); }}
阅读全文
0 0
- 最新Spring-4.3.10和quartz-2.2.3整合示例
- Spring整合Quartz示例
- spring和quartz整合
- spring 和quartz 整合
- QuartZ和Spring整合
- spring和quartz整合
- quartz和spring整合
- quartz(二):quartz和spring的整合
- quartz框架和spring整合
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- 最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例
- LDAP服务器安装
- es6 Object.assign
- Chapter 3
- Html基本框架练习
- PDF文档的加密与解密&&keil5中中文的复制问题
- 最新Spring-4.3.10和quartz-2.2.3整合示例
- 解决maven开发下jstl依赖版本不匹配
- Linux服务器部署系列之七—OpenLDAP篇
- linux安装jdk1.8(rpm方式)
- Chapter 3
- 使用Android Studio导入源码
- zabbix使用企业微信发送告警信息
- Linux下openldap的配置的访问
- C#利用反射,遍历获得一个类的所有属性名,以及该类的实例的所有属性的值