zoukankan      html  css  js  c++  java
  • spring3.1的BeanFactory与Quartz1.8整合

    spring的applicationContext.xml配置文件:

    加入

    <bean id="myJob" class="org.springframework.scheduling.quartz.JobDetailBean">
      <property name="jobClass">
       <value>com.job.Service</value>
      </property>
     </bean> 
     <bean id="myCronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
      <property name="jobDetail">
       <ref bean="myJob"/>
      </property>
      <property name="cronExpression"> 
       <value>0 0 1 * * ?</value>
      </property>
     </bean>
     <bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
      <property name="jobFactory"> 
       <bean class="com.JobFactory"/> 
      </property> 
      <property name="triggers"> 
       <list> 
       <ref bean="myCronTrigger"/> 
       </list> 
      </property> 
     </bean>
    

    quartz与spring的BeanFactory整合的类: 

    /**
     * 为定时器提供自动注入功能
     */
    public class JobFactory extends SpringBeanJobFactory implements
    		ApplicationContextAware {
    
    	private ApplicationContext applicationContext;
    
    	@Override
    	public void setApplicationContext(ApplicationContext applicationContext)
    			throws BeansException {
    		this.applicationContext = applicationContext;
    	}
    
    	@Override
    	protected Object createJobInstance(TriggerFiredBundle bundle)
    			throws Exception {
    		Object jobInstance = super.createJobInstance(bundle);
    		applicationContext.getAutowireCapableBeanFactory().autowireBean(	jobInstance);
    		return jobInstance;
    	}
    	
    }
    

     定时任务类:

    public class MyService extends QuartzJobBean {
    
    	private static final Log log = LogFactory.getLog(MyService.class);
    	
    	@Resource
    	private UserService userService;
    	
    	@Override
    	protected void executeInternal(JobExecutionContext jobExecutionContext)
    			throws JobExecutionException {
    		log.info("执行定时任务");
    		userService.freshUserAmount();
    	}
    	
    }
    

    Quartz中时间表达式的设置-----corn表达式 

    时间格式: <!-- s m h d m w(?) y(?) -->,   分别对应: 秒>分>小时>日>月>周>年, 

  • 相关阅读:
    天眼查接口的调用
    EditPlus5.0注册码
    图片转化成base64字符串
    java根据图片的url地址下载图片到本地
    将字符串中的数字转化为文字
    String类型转json 转JSONObject 转 JSONArray 以及 遍历
    三个日期类型比较大小 20181123
    字符与字节的区别
    面向对象五大原则
    Struts/Servlet,action转到jsp后,CSS失效,路径问题(struts2,jsp路径,action路径,action跳转,相对路径,绝对路径)
  • 原文地址:https://www.cnblogs.com/zhaofeng555/p/3544070.html
Copyright © 2011-2022 走看看