1. 程式人生 > >spring-quartz 定時器 給targetMethod傳遞引數

spring-quartz 定時器 給targetMethod傳遞引數

今天在做一個專案的時候,要給一個定時器任務的執行方法傳遞引數,在網上找了一下資料,可以使用arguments引數:  
 <bean id="subsidyJobDetail"  
 class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">  
       <property name="targetObject" ref="subsidyJob" />  
       <property name="targetMethod" value="execute" />  
       <property name="concurrent" value="false" />  
       <property name="arguments" value="argsValue"/>
  </bean>  

 

  可以通過arguments 引數給targetMethod方法傳遞引數,  
public class SubsidySchemeJob  {  
    public void execute(String args) {  
       System.out.println("方案開始執行"+args);  
    }  
}  

  

在execute方法中就可以獲得引數;   如果需要傳遞多個多個引數,在xml中用list配置:
<property name="arguments">
   <list>
       <value>arg1</value>
       <value>arg2</value>
   </list>
</property>

 

  在方法中用陣列獲取:
public class SubsidySchemeJob  {  
    public void execute(String args[]) {  
      System.out.println("方案開始執行,引數1:"+args[0] +"引數2:" + args[1]);  
    }  
}