zoukankan      html  css  js  c++  java
  • spring3 上配置quartz 任务调度

    maven配置:

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

    spring配置:

    <!-- 定义目标bean和bean中的方法 -->
    <!-- =====================日常任务job========================== -->
    <bean id="DailyTaskQtzJob" class="com.ctcti.m1000.controller.AsteriskRunnable "> </bean> //你要调用的类
    <bean id="DailyTaskQtzJobMethod" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject">
    <ref bean="DailyTaskQtzJob"/>
    </property>
    <property name="targetMethod">
    <!-- 要执行的方法名称 -->
    <value>execute</value> //类里面调用的方法名称
    </property>
    </bean>
    <!-- ======================== 调度触发器 ======================== -->
    <bean id="DailyTaskCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="DailyTaskQtzJobMethod"></property>
    <property name="cronExpression" value="0 55 9 ? * *"></property>
    </bean>
    <!-- ======================== 调度工厂 ======================== -->
    <bean id="SpringJobSchedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
    <list>
    <ref bean="DailyTaskCronTriggerBean"/>
    </list>
    </property>
    </bean>

    java类:

    public class AsteriskRunnable {
    Logger logger = Logger.getLogger(AsteriskRunnable.class);

    @Autowired
    private CustomService CustomService;

    public void execute() {
    // TODO Auto-generated method stub
    List<CustomRepository> custrtylist=CustomService.list(" ISNULL(checkfalg)!='' limit 1,2");
    if(custrtylist!=null && custrtylist.size()>0){
    for(int i=0;i<custrtylist.size();i++){
    CustomRepository cty=custrtylist.get(i);
    System.out.println("要拨打的号码"+i+"=="+cty.getPhone());
    }
    }   

    }
    }

    可能会出现的异常:

    1.

    解决方法:

    maven配置加入:

    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>4.1.6.RELEASE</version>
    </dependency>

    将:

    <bean id="DailyTaskCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean"> 

    改为:

    <bean id="DailyTaskCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> 

    Table ‘database.qrtz_locks’ doesn’t exist

    加上这个

     <bean id="SpringJobSchedulerFactoryBean"  lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">

  • 相关阅读:
    QLineEdit控件只能输入数字--QValidator结合正则
    谈 Linux,Windows 和 Mac (转自 王垠)
    看了王垠的文章《对Rust语言的分析》
    unsigned int 无符号整型的使用
    Qt布局Layout设置完全填充(设置Layout的Margin值)
    C#批量删除Mysql中相同前缀的表格
    libusb
    NPOI -- 读取excel表格中的时间格式
    spring项目启动执行
    kafka安全(一)SASL+ACL
  • 原文地址:https://www.cnblogs.com/cbdd/p/5531254.html
Copyright © 2011-2022 走看看