Quartz的spring集成
2017-04-27 19:51
288 查看
Quartz的spring集成
1.实现Job接口,定义Quartz的Job
java public class MailJob implements Job{ @Override public void execute(JobExecutionContext context) throws JobExecutionException { System.out.println("你的任务执行代码"); } }
2.quartz.properties
建议参考持久化Quartz的内容,进行编写
3.配置spring
3.1配置jobDetail
java <bean name="mailJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean"> <property name="jobClass" value="cn.com.ultrapower.atp.quartz.MailJob" /> <property name="jobDataMap"> <map> <entry key="mailIndex" value="xxx" /> <entry key="username" value="xxx" /> <entry key="password" value="123456" /> </map> </property> <property name="durability" value="true" /> </bean>
其实上述的代码,与我们写的下面的代码很类似:
java JobDetail jobDetail = JobBuilder.newJob(UltraJob.class) .withIdentity(jobName, JOB_GROUP_NAME) .usingJobData("mailIndex", "xxx") .usingJobData("username", "xxx") .usingJobData("password", "123456") .build();
3.2 配置Trigger
java <bean id="mailSimpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> <property name="name" value="mailTrigger"></property> <property name="group" value="mailTrigger"></property> <property name="jobDetail"> <ref bean="mailJobDetail" /> </property> <property name="startDelay" value="20000"/> <property name="repeatInterval" value="5000"/> </bean>
上述代码以SimpleTrigger做示范,稍后会做CronTrigger的 上述代码类似于我们下面的java代码:
java CronTrigger cronTrigger = TriggerBuilder.newTrigger().withIdentity(jobName, TRIGGER_GROUP_NAME).startNow() .withSchedule(cronBuilder) .build();
3.3 配置Scheduler
java <bean id="ultraSchedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="autoStartup" value="true"></property> <!-- 自定义一个scheduler的名字,方便后期实例化多种scheduler以区分 --> <property name="schedulerName" value="ultraScheduler"></property> <property name="configLocation" value="/WEB-INF/config/quartz.properties" /> <!-- 下面是将spring的上下文 注册进quartz --> <property name="applicationContextSchedulerContextKey" value="applicationContext" /> <property name="triggers"> <list> <!-- 下面这段话将我们上述配置的简单Trigger配置进了Scheduler--> <ref bean="mailSimpleTrigger" /> </list> </property> </bean>
现在我们已经将所有的spring配置做完了。稍后会写复杂点(持久化)的spring配置。
相关文章推荐
- Spring Boot集成Quartz注入Spring管理的类
- spring2.0 集成 quartz 问题解决方案
- Spring集成Quartz定时任务
- spring集成quartz的集群配置实例
- Spring集成Quartz定时任务
- spring集成定时任务框架 Quartz的两种方式
- Java 中的 Timer 使用和 Quartz 的基本使用(集成了 Spring)
- Quartz学习——Spring和Quartz集成详解(三)
- [springboot]集成org.quartz-scheduler进行任务调度
- spring 集成 Quartz
- spring-boot集成Quartz
- Spring和Quartz集成实现定时任务
- Spring集成Quartz定时任务框架介绍和Cron表达式详解
- Quartz - Spring和Quartz的集成
- Spring Boot集成Quartz注入Spring管理的类
- Quartz与Spring的集成
- 关于Spring集成Quartz的concurrent属性
- 关于Spring集成Quartz的concurrent属性
- Quartz与Spring集成 Job如何自动注入Spring容器托管的对象
- spring boot 集成quartz 2.0 实现前端动态配置(获取spring上下文)的两种方式,启动数据库中已开启定时任务