版权声明:本文为CSDN博主「dreaming317」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dreaming317/article/details/84191162
————————————————
今天在做一个项目的时候,要给一个定时器任务的执行方法传递参数,在网上找了一下资料,可以使用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]);
}
}