定时器Quartz

  • xml中的配置
    • <context:annotation-config></context:annotation-config>
      <bean id="clearImgJob" class="com.ssw.jobs.ClearImgJob"></bean>
      <bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
      <!-- 注入目标对象 -->
      <property name="targetObject" ref="clearImgJob"/>
      <!-- 注入目标方法 -->
      <property name="targetMethod" value="clearImg"/>
      </bean>
      <!-- 注册一个触发器,指定任务触发的时间 -->
      <bean id="myTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
      <!-- 注入JobDetail -->
      <property name="jobDetail" ref="jobDetail"/>
      <!-- 指定触发的时间,基于Cron表达式 -->
      <property name="cronExpression">
      <value>0/10 * * * * ?</value>
      </property>
      </bean>
      <!-- 注册一个统一的调度工厂,通过这个调度工厂调度任务 -->
      <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
      <!-- 注入多个触发器 -->
      <property name="triggers">
      <list><ref bean="myTrigger"/> </list>
      </property>
      </bean>
  • java代码
    • public class ClearImgJob {

      @Autowired
      JedisPool jedisPool;
      public void clearImg() {
      Set<String> sdiffstore = jedisPool.getResource().sdiff(RedisConstant.SETMEAL_PIC_RESOURCES, RedisConstant.SETMEAL_PIC_DB_RESOURCES);
      if (sdiffstore != null) {
      for (String s : sdiffstore) {
      QiniuUtils.deleteFileFromQiniu(s);
      jedisPool.getResource().srem(RedisConstant.SETMEAL_PIC_RESOURCES, s);
      System.out.println(s);
      }
      }
      }
      }
  • core表达式

posted on 2020-03-12 00:33  赟麟  阅读(158)  评论(0编辑  收藏  举报

导航