用的spring,需要在XML里面往JobDetailBean注入一个org.quartz.JobDataMap作为参数.在类里面可以直接取出来.(如果不用spring,可以直接配置job-data-map)
<bean name="testDataMap" class="org.quartz.JobDataMap">
<constructor-arg>
<map>
<entry key="PARAM1" value="参数1"></entry>
<entry key="PARAM2" value="参数2"></entry>
<entry key="PARAM3" value="参数3"></entry>
</map>
</constructor-arg>
</bean>
<bean name="jobDetail1" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>
com.test.quartzforcz.sendTask
</value>
</property>
<property name="jobDataMap">
<ref bean="testDataMap" />
</property>
</bean>
在Job类中的 executeInternal(JobExecutionContext context) 中这样取出:
JobDataMap dataMap = context.getJobDetail().getJobDataMap();
logger.info("PARAM1:" + dataMap.getString("PARAM1"));