java - Quartz Scheduler创建没有quartz.properties的schedulerFactoryBean Bean

标签 java spring quartz-scheduler

我在我的 Spring 应用程序中运行了quartz调度程序。

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

这是我的 QuartzConfiguration..

@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:

org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.oracle.OracleDelegate
org.quartz.jobStore.useProperties=false
org.quartz.jobStore.dataSource=myDS
org.quartz.dataSource.myDS.driver =oracle.jdbc.OracleDriver
org.quartz.dataSource.myDS.URL = jdbc:oracle:thin:@example:1521:db
org.quartz.dataSource.myDS.user = user
org.quartz.dataSource.myDS.password = password
org.quartz.dataSource.myDS.maxConnections = 5
org.quartz.dataSource.myDS.validationQuery = select 1 from dual
org.quartz.jobStore.isClustered=false
org.quartz.jobStore.tablePrefix = DPPA.QUARTZ_
org.quartz.threadPool.threadCount=1
org.quartz.scheduler.skipUpdateCheck=true
org.quartz.plugin.jobHistory.class=id.co.fifgroup.dpa.batch.BatchHistoryListener

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

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

最佳答案

这样就可以在没有properties文件的情况下进行配置;

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

关于java - Quartz Scheduler创建没有quartz.properties的schedulerFactoryBean Bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43464977/

相关文章:

java - GoogleMaps v2 Android 的我的位置按钮,不显示

java - android eclipse 中的菜单项单击

java - 如何在 Spring 的秒 0 之前启动 quartz 调度程序?

Java EE 5 的 Cron 语法?

quartz-scheduler - 如何清除 Quartz Scheduler 中的触发器

Java反射: setting a final field isn't working

Java正则表达式模式查询

java - Spring+Hibernate+MySQL CRUD 不工作

java - 导入数据时,thymeleaf 和 ajax 有什么区别?

java - Spring - Autowiring 一个具有构造函数的类