java – 使Quartz调度程序在没有JDBC的情况下持久化
发布时间:2020-05-24 10:44:09 所属栏目:Java 来源:互联网
导读:我们正在构建一个大约 MongoDB的应用程序,并且需要定期运行类似cron的作业.当项目基于带有JDBC的RDBMS时,我之前使用过 Quartz这样的事情. 由于我们已经在本项目中使用MongoDB作为我们的主数据存储区,因此我不想仅仅为了保留Quartz作业而引入RDBMS,但似乎没有
|
我们正在构建一个大约 MongoDB的应用程序,并且需要定期运行类似cron的作业.当项目基于带有JDBC的RDBMS时,我之前使用过 Quartz这样的事情. 由于我们已经在本项目中使用MongoDB作为我们的主数据存储区,因此我不想仅仅为了保留Quartz作业而引入RDBMS,但似乎没有任何类型的JobStore实现MongoDB. 任何人都可以推荐使用MongoDB支持Quartz的方法,或者Quartz的简单替代方法吗?我的需求相当简单(使用某种配置方式运行各种java作业,àlacron). 解决方法我们用Spring运行石英,它只是一个带有作业定义和cron表达式的XML文件.在Spring中宣布一份工作: <bean name="myJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="concurrent" value="false"/>
<property name="targetBeanName" value="myBean"/>
<property name="targetMethod" value="myScheduledMethod"/>
</bean>
<bean id="myJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="myJob"/>
<!-- every 30s -->
<property name="cronExpression" value="0/30 * * * * ?"/>
</bean>
石英接线: <bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<!-- List of batch jobs to be fed to the scheduler. -->
<list>
<ref bean="myTrigger"/>
</list>
</property>
</bean>
运行它: import org.springframework.context.support.ClassPathXmlApplicationContext;
public class App
{
public static void main( String[] args ) throws Exception
{
new ClassPathXmlApplicationContext("jobs-context.xml");
}
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
