spring quartz job

直接上代码

一,pom

<dependency>
      <groupId>org.quartz-scheduler</groupId>
      <artifactId>quartz</artifactId>
      <version>2.3.0</version>
    </dependency>

二,创建任务

Test1Job,只是简单打印

package com.kintech.webJob.job;
 
public class Test1Job {
 
    public void sayHello() {
        System.out.println(new Date() + " -> Hello, 我是任务 1");
    }
}

Test2Job,模拟抓取数据

package com.kintech.webJob.job;
 
public class Test2Job {
    @Autowired
    BoBookingorderJpaService boBookingorderJpaService;
 
    public void sayHello() {
        List<BoBookingorder> list=boBookingorderJpaService.findAll();
        System.out.println("list : "+list.size()+"------"+new Date() + " -> Hello, 我是任务 2");
    }
}

三,创建quartz-job.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc.xsd">
 
    <!-- 任务1配置 -->
    <bean name="job1" class="com.kintech.webJob.job.Test1Job"/>
    <bean id="jobDetail_1" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <!-- 执行的类 -->
        <property name="targetObject">
            <ref bean="job1" />
        </property>
        <!-- 类中的方法 -->
        <property name="targetMethod">
            <value>sayHello</value>
        </property>
    </bean>
    <bean id="cronTrigger_1" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail">
            <ref bean="jobDetail_1" />
        </property>
        <!-- 每一秒钟执行一次 -->
        <property name="cronExpression">
            <value>0/1 * * * * ?</value>
        </property>
    </bean>
 
    <!-- 任务2配置 -->
    <bean name="job2" class="com.kintech.webJob.job.Test2Job"/>
    <bean id="jobDetail_2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject">
            <ref bean="job2" />
        </property>
        <property name="targetMethod">
            <value>sayHello</value>
        </property>
    </bean>
    <bean id="cronTrigger_2" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
        <property name="jobDetail">
            <ref bean="jobDetail_2" />
        </property>
        <property name="cronExpression">
            <value>0/1 * * * * ?</value>
        </property>
    </bean>
 
    <!-- 总配置 -->
    <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <!-- 添加触发器 -->
        <property name="triggers">
            <list>
                <ref bean="cronTrigger_1" />
                <ref bean="cronTrigger_2" />
            </list>
        </property>
    </bean>
</beans>

四,导入application.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p"
       xmlns:cache="http://www.springframework.org/schema/cache"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                           http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
                           http://www.springframework.org/schema/context 
                           http://www.springframework.org/schema/context/spring-context-4.3.xsd  
                           http://www.springframework.org/schema/mvc 
                           http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd
                           http://www.springframework.org/schema/aop 
                           http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
                           http://www.springframework.org/schema/tx 
                           http://www.springframework.org/schema/tx/spring-tx-4.3.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd"
       default-lazy-init="true">
 
    <import resource="quartz-job.xml"/>
 
 
</beans>

五,结果

参考:

https://blog.csdn.net/pansanday/article/details/42466173

https://blog.csdn.net/defonds/article/details/49496895

原文地址:https://www.cnblogs.com/hanjun0612/p/14677628.html