quartz 通过数据库配置cronExpression
来源:互联网 发布:网络语拉仇恨什么意思 编辑:程序博客网 时间:2024/06/05 12:44
<!-- 将定时设置中的数据根据开始时间转移到执行的队列中 (实例) --><bean id="addExecuteTask" class="com.zd.jobs.AddExecuteTask"/> <!-- 定时获取天气预报信息 (实例) --><bean id="getWeatherTask" class="com.zd.jobs.GetWeatherTask"/> <bean lazy-init="false" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="addExecuteTaskTrigger" /> <!-- <ref bean="readWeaterDataTrigger" /> --></list> </property> </bean> <!-- 设置定时器运行时间 --> <bean id="addExecuteTaskTrigger" class="<strong>com.zd.comm.quartz.InitializingCronTrigger</strong>"> <property name="jobDetail" ref="addExecuteTaskDetail"/> <property name="cronExpression" value="* */2 * * * ?"/> </bean> <bean id="readWeaterDataTrigger" class="com.zd.comm.quartz.InitializingCronTrigger"> <property name="jobDetail" ref="readWeaterDataDetail"/> <property name="cronExpression" value="* */1 * * * ?"/> </bean> <!-- 定时器执行方法 --> <bean id="addExecuteTaskDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="addExecuteTask"/> <property name="targetMethod" value="transferTask"/> <!-- 是否允许任务并发执行。当值为false时,表示必须等到前一个线程处理完毕后才再启一个新的线程 --> <property name="concurrent" value="false"/></bean> <bean id="readWeaterDataDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="getWeatherTask"/> <property name="targetMethod" value="rquestWeatherByCityName"/> <property name="concurrent" value="false"/></bean>
最重要的就是 com.zd.comm.quartz.InitializingCronTrigger ,继承 CronTriggerBean ,
并在 public void setCronExpression(String cronExpression) 方法中,设置新的cronExpression;
@Servicepublic class InitializingCronTrigger extends CronTriggerBean implements Serializable { private static final Log log = LogFactory.getLog(InitializingCronTrigger.class);/** * */private static final long serialVersionUID = 1L;@Inject private SysParameterService sysParameterService;public void setCronExpression(String cronExpression) {String new_cronExpression = sysParameterService.getSysParameterByTypeAndKey("quartz", "quartz_weather");log.info("cronExpression:" + cronExpression);if(!new_cronExpression.equalsIgnoreCase(cronExpression)){try {super.setCronExpression(new_cronExpression);} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();} }} }
0 0
- quartz 通过数据库配置cronExpression
- Quartz cronExpression配置说明
- quartz 中 cronExpression 配置
- Spring quartz cronExpression 配置
- quartz中cronExpression配置说明
- Quartz中cronExpression配置说明
- Quartz中cronExpression配置说明
- Quartz的cronExpression配置说明
- quartz通过数据库配置trigger
- Spring--quartz中cronExpression配置说明以及cronExpression表达式解释
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- Spring--quartz中cronExpression配置说明
- java中的String之intern()
- 职场分享:职场生涯中我们经常面临的一些困惑
- Django分页
- 黑马程序员--学习日志--反射
- ios企业分发应用(继dropbox不能用后的新办法)
- quartz 通过数据库配置cronExpression
- xampp集成环境下使用SSL的问题
- 向服务器发送json格式字符串
- 2015 偶数求和
- Apache MINA NIO模型
- hdu 3709 Balanced Number (数位dp)
- 零资源!如何推广一款新的App?
- IOS中Json解析的四种方法
- 2016 数据的交换输出