前言
今天收到一封邮件,大概内容如下:spring boot鼓励去配置化,那么怎么将第三方jar包中的xml去配置化了?
其实,这个问题,在前面的博客中也有提到,http://blog.csdn.net/liuchuanhong1/article/details/60873295
下面,我们就以Quartz定时任务为例,单独对这个问题来进行说明,如何实现去配置化。
如果不使用spring boot,我们配置一个简单的定时任务时,需要引入以下配置文件:
<!-- 配置需要定时执行的任务类以及方法 -->
<bean id="doJob"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 指定任务类 -->
<property name="targetObject" ref="schedulerTask" />
<!-- 指定任务执行的方法 -->
<property name="targetMethod" value="doTask" />
<property name="concurrent" value="false"></property>
</bean>
<!-- 配置触发器 -->
<bean id="jobTrigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="doJob" />
<!-- 每5秒运行一次 -->
<property name="cronExpression" value="0/5 * * * * ?" />
</bean>
<!-- 触发定时任务 -->
<bean id="schedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="jobTrigger" /><!-- 此处可以配置多个触发器 -->
</list>
</property>
<property name="applicationContextSchedulerContextKey" value="applicationContextKey" />
<property name="waitForJobsToCompleteOnShutdown