xml方式配置quartz,实现Java定时任务

  • 开发前准备
  1. 所需jar:quartz-all-1.6.5.jar(不限版本)
  2. jdk1.6
  3. 准备好service类和dao类
  • 代码
  1. applicationContext-quartz.xml(放在src目录下)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
    "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<!-- pdf转图片的dao -->
 	<bean id="imageTaskdao" class="com.wondersgroup.sabic.dagl.task.dao.ImageTaskDao" singleton="false">
		<property name="sessionFactory" ref="sessionFactory" />
			<property name="jdbcTemplate">
				<bean class="org.springframework.jdbc.core.JdbcTemplate">
					<property name="dataSource" ref="dataSource"></property>
				</bean>
		</property>
	
	 </bean>
	<!-- pdf转图片的service -->
	 <bean id="imageTaskService" class="com.wondersgroup.sabic.dagl.task.service.ImageTaskService" singleton="false">
	 	<property name="imageTaskDao" ref="imageTaskdao"></property>
	 </bean>
	
    <!-- pdf转图片 --> 
    <bean id="jobtask4SyncPdf2Img" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
        <!-- 调用的类 --> 
        <property name="targetObject"> 
            <ref bean="imageTaskService"/> 
        </property> 
        <!-- 调用类中的方法 --> 
        <property name="targetMethod"> 
            <value>syncPdf2Img</value> 
        </property> 
        <property name="concurrent" value="false" />
    </bean>
    
    <!-- 定义触发时间 --> 
    <bean id="doTime4SyncPdf2Img" class="org.springframework.scheduling.quartz.CronTriggerBean"> 
        <property name="jobDetail"> 
            <ref bean="jobtask4SyncPdf2Img"/> 
        </property> 
        <!-- cron表达式 --> 
        <property name="cronExpression"> 
            <value>0 0/2 * * * ?</value> 
        </property> 
    </bean> 
 <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序  -->
	<bean id="startQuertz" lazy-init="false" autowire="no"
		class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="triggers">
			<list>
				<ref bean="doTime4SyncPdf2Img" />
			</list>
		</property>
		<property name="startupDelay" value="0"></property> 
	</bean>
</beans>
  1. 在applicationContext.xml中添加配置
<import resource="classpath:applicationContext-quartz.xml"/>

猜你喜欢

转载自blog.csdn.net/zqq3436/article/details/81479579
今日推荐