设置org.springframework.scheduling.quartz.JobDetailBean的bean属性\'jobClass\'
|
我的项目有一个Quartz Scheduler,我将JobDetailBean设置为
<bean id=\"deadlineFailureChecker\" class=\"info.release.scheduler.DeadlineFailureChecker\" />
<bean id=\"workingHourPerDayUpdater\" class=\"info.release.scheduler.WorkingHourPerDayUpdater\" />
<bean name=\"scheduledJob\" class=\"org.springframework.scheduling.quartz.JobDetailBean\">
<property name=\"jobClass\" value=\"info.release.scheduler.ScheduledJob\" />
<property name=\"jobDataAsMap\">
<map>
<entry key=\"deadlineFailureChecker\" value-ref=\"deadlineFailureChecker\" />
<entry key=\"workingHourPerDayUpdater\" value-ref=\"workingHourPerDayUpdater\" />
</map>
</property>
</bean>
现在,我想将属性值传递给info.release.scheduler.ScheduledJob,我做到了:
<bean id=\"scheduledJobBean\" class=\"info.release.scheduler.ScheduledJob\">
<property name=\"afrodite\" ref=\"afrodite\" />
</bean>
<bean name=\"scheduledJob\" class=\"org.springframework.scheduling.quartz.JobDetailBean\">
<property name=\"jobClass\">
<bean factory-bean=\"scheduledJobBean\" factory-method=\"getClass\"></bean>
</property>
<property name=\"jobDataAsMap\">
<map>
<entry key=\"deadlineFailureChecker\" value-ref=\"deadlineFailureChecker\" />
<entry key=\"workingHourPerDayUpdater\" value-ref=\"workingHourPerDayUpdater\" />
</map>
</property>
</bean>
但是以下System.out.println
正在打印null
:
@Override
protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
System.out.println(\"=============================================\"+this.afrodite);
}
该方法属于info.release.scheduler.ScheduledJob extends QuartzJobBean
。
我也做了一个实验
<bean id=\"scheduledJobBean\" class=\"info.release.scheduler.ScheduledJob\">
<property name=\"afrodite\" ref=\"afrodite\" />
</bean>
至
<bean id=\"scheduledJobBean\" class=\"info.release.scheduler.ScheduledJob\" init-method=\"init\">
<property name=\"afrodite\" ref=\"afrodite\" />
</bean>
和
public void init() {
System.out.println(\"=============================================\"+this.afrodite);
}
在此init中,System.out.println
不是输出null而是值。
我不明白发生了什么! JobDetailBean是否重新实例化jobClass对象?
我需要设置的是JobDetailBean
的jobClass
属性的值类的属性。
谢谢并恭祝安康。
没有找到相关结果
已邀请:
1 个回复
缕嚏冻