我已经在我的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>


这应该导致每5000毫秒调用一次clearCache() bean的templateMailService方法,但是似乎什么也没有发生。我想念什么吗?

干杯,

最佳答案

我认为您需要:

<bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean">
  <property name="scheduledTimerTasks">
    <list>
      <ref bean="templateCacheClearingTask"/>
    </list>
  </property>
</bean>


除了您已经拥有的东西。

关于java - 方法调用Spring bean,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/344516/

10-16 07:15