| | |
| | | package com.ruoyi.inspectiontask.service.impl; |
| | | |
| | | import org.quartz.JobDataMap; |
| | | import org.quartz.Scheduler; |
| | | import org.quartz.*; |
| | | import org.quartz.spi.TriggerFiredBundle; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.config.AutowireCapableBeanFactory; |
| | |
| | | // 假设已配置名为dataSource的数据源Bean |
| | | @Autowired |
| | | private DataSource dataSource; |
| | | |
| | | @Bean |
| | | public JobDetailFactoryBean jobDetail() { |
| | | JobDetailFactoryBean factory = new JobDetailFactoryBean(); |
| | | factory.setJobClass(TimingTaskJob.class); // 你的自定义 Job 类(需实现 Job 接口) |
| | | |
| | | // 1. 核心:设置为持久化任务(必须,否则不写入 qrtz_job_details 或重启清理) |
| | | factory.setDurability(true); |
| | | |
| | | // 2. 可选:任务执行崩溃后,重启时是否恢复执行(建议开启) |
| | | factory.setRequestsRecovery(true); |
| | | |
| | | // // 3. 可选:设置 JobDataMap(若需传递参数,参数需可序列化) |
| | | // JobDataMap jobDataMap = new JobDataMap(); |
| | | // jobDataMap.put("key", "value"); // 示例参数(若参数是自定义对象,需实现 Serializable) |
| | | // factory.setJobDataMap(jobDataMap); |
| | | |
| | | return factory; |
| | | } |
| | | |
| | | @Bean |
| | | public SchedulerFactoryBean schedulerFactoryBean() { |