方法调用Spring bean

Dón*_*nal 0 java spring scheduled-tasks

我在Spring配置中声明了以下bean

<bean id="templateCacheClearingTask" class="org.springframework.scheduling.timer.ScheduledTimerTask">
    <property name="delay" value="5000" />
    <property name="period" value="5000" />

    <property name="timerTask">
        <bean class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean">
            <property name="targetObject" ref="templateMailService" />
            <property name="targetMethod" value="clearCache" />
        </bean>
    </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

这应该导致每5000毫秒调用bean 的clearCache()方法templateMailService,但似乎没有发生任何事情.我错过了什么吗?

干杯,唐

dig*_*tum 5

我想你需要:

<bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
  <property name="scheduledTimerTasks">
    <list>
      <ref bean="templateCacheClearingTask"/>
    </list>
  </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

除了你已经拥有的.