博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot Quartz集成(一)
阅读量:6370 次
发布时间:2019-06-23

本文共 2030 字,大约阅读时间需要 6 分钟。

hot3.png

1.创建一个spring Boot 工程;spring-boot-quartz

2.引入关联包

org.springframework
spring-context-support
4.3.9.RELEASE
org.springframework
spring-tx
4.3.9.RELEASE
org.quartz-scheduler
quartz
2.2.3
org.quartz-scheduler
quartz-jobs
2.2.3

3.创建Quartz配置类:QuartzConfiguare

/***quartz配置类*1.创建 SchedulerFactoryBean *2.创建 Scheduler */@Configuration //必须public class QuartzConfig {    @Bean    public SchedulerFactoryBean  schedulerFactoryBean(){        SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean();        return   schedulerFactoryBean;    }    @Bean    public Scheduler scheduler(){        return  schedulerFactoryBean().getScheduler();    }}

4.创建Job类;并实现Job接口

public class MyJob implements Job{    @Override    public void execute(JobExecutionContext context) throws JobExecutionException {        System.out.println("this is a Job "+new Date());    }}

5.创建任务类Task;包含:JobDetail、SimpleScheduleBuilder、Trigger、Scheduler

@Service // 通过spring事务来管理任务类,自动扫描实例化public class MyTask {    @Autowired    private Scheduler scheduler;    @PostConstruct // 相当于init-method    public void init(){        //jobDetail        JobDetail jobDetail = JobBuilder.newJob(MyJob.class).withIdentity("myJob","group1").build();//定义每两秒执行一次,执行到永远       SimpleScheduleBuilder simpleScheduleBuilder =SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2).repeatForever();        //trigger        Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger","group2").startNow().withSchedule(simpleScheduleBuilder).build();        try {            scheduler.scheduleJob(jobDetail,trigger);        } catch (SchedulerException e) {            e.printStackTrace();        }    }}

6.最后执行SpringBoot运行类

转载于:https://my.oschina.net/u/2251646/blog/1512229

你可能感兴趣的文章
引用计数实现
查看>>
数据挖掘技术(第3版)
查看>>
2013ARM开发者大会
查看>>
第二届全球金融峰会演讲PPT
查看>>
基于开源项目的WebApp开发
查看>>
sql server主动推送客户端更新数据
查看>>
can't connect to local mysql server through socket
查看>>
Android APP的安装路径
查看>>
OpeCV中type与depth的区别
查看>>
Android,谁动了我的内存(1)
查看>>
Maven创建项目
查看>>
以下文件中的行尾不一致,要将行尾标准化吗
查看>>
EMBRACE
查看>>
关闭SELinux
查看>>
android:layout_gravity 和 android:gravity 的区别
查看>>
rsync服务器搭建
查看>>
angularjs过滤器(number)
查看>>
同步、异步、互斥、信号量、阻塞、非阻塞
查看>>
黑盒测试的测试用例设计方法
查看>>
使用Ganglia监控系统监控集群(debian)
查看>>