Quartz Scheduler创建不带quartz.properties的schedulerFactoryBean Bean

时间:2017-04-18 06:20:51

标签: java spring quartz-scheduler

我在spring app中运行了石英调度程序。

现在,我使用quartz.properties来包含任何属性值,并使用它来创建schedulerFactoryBean Bean,它工作正常。

这是我的QuartzConfiguration ..

                                                  quoteplus quote+

我的quartz.properties:

@Configuration
public class QuartzConfiguration {

    public static final String CONTEXT_KEY = "applicationContext";

    //@Autowired
    //private DataSource dataSource;
    @Bean
    public SchedulerFactoryBean schedulerFactoryBean() {
        SchedulerFactoryBean scheduler = new SchedulerFactoryBean();
        scheduler.setApplicationContextSchedulerContextKey(CONTEXT_KEY);
        scheduler.setConfigLocation(new ClassPathResource("config/quartz.properties"));
        //scheduler.setDataSource(dataSource);
        //scheduler.setAutoStartup(true);
        scheduler.setWaitForJobsToCompleteOnShutdown(true);
        return scheduler;
    }

}

我想创建没有任何quartz.properties的schedulerFactoryBean,因为我的客户端不想更改war archieve中的任何数据库连接。

是否可以在没有任何quartz.properties的情况下创建schedulerFactoryBean?

1 个答案:

答案 0 :(得分:1)

您可以通过这种方式配置它而不使用属性文件;

Properties p = new Properties();
p.put("org.quartz.scheduler.instanceName", "Scheduler_test");
p.put("org.quartz.threadPool.threadCount", 2);
...
StdSchedulerFactory factory = new StdSchedulerFactory(p);