diff --git a/spring-framework-reference/src/scheduling.xml b/spring-framework-reference/src/scheduling.xml index 81545e9a9ac..7157e558d78 100644 --- a/spring-framework-reference/src/scheduling.xml +++ b/spring-framework-reference/src/scheduling.xml @@ -1,4 +1,4 @@ - + @@ -847,110 +847,4 @@ public class ExampleJob extends QuartzJobBean { Javadoc for more information. - -
- Using JDK Timer support - - The other way to schedule jobs in Spring is to use JDK - Timer objects. You can create custom timers or use - the timer that invokes methods. Wiring timers is done using the - TimerFactoryBean. - -
- Creating custom timers - - Using the TimerTask you can create customer - timer tasks, similar to Quartz jobs: - - public class CheckEmailAddresses extends TimerTask { - - private List emailAddresses; - - public void setEmailAddresses(List emailAddresses) { - this.emailAddresses = emailAddresses; - } - - public void run() { - // iterate over all email addresses and archive them - } -} - - Wiring it up is simple: - - <bean id="checkEmail" class="examples.CheckEmailAddress"> - <property name="emailAddresses"> - <list> - <value>test@springframework.org</value> - <value>foo@bar.com</value> - <value>john@doe.net</value> - </list> - </property> -</bean> - -<bean id="scheduledTask" class="org.springframework.scheduling.timer.ScheduledTimerTask"> - <!-- wait 10 seconds before starting repeated execution --> - <property name="delay" value="10000" /> - <!-- run every 50 seconds --> - <property name="period" value="50000" /> - <property name="timerTask" ref="checkEmail" /> -</bean> - - Note that letting the task only run once can be done by - changing the period property to 0 (or a negative - value). -
- -
- Using the - <classname>MethodInvokingTimerTaskFactoryBean</classname> - - Similar to the Quartz support, the Timer - support also features a component that allows you to periodically invoke - a method: - - <bean id="doIt" class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean"> - <property name="targetObject" ref="exampleBusinessObject" /> - <property name="targetMethod" value="doIt" /> -</bean> - - The above example will result in the doIt - method being called on the exampleBusinessObject (see - below): - - public class BusinessObject { - - // properties and collaborators - - public void doIt() { - // do the actual work - } -} - - Changing the timerTask reference of the - ScheduledTimerTask example to the bean - doIt will result in the doIt - method being executed on a fixed schedule. -
- -
- Wrapping up: setting up the tasks using the - <classname>TimerFactoryBean</classname> - - The TimerFactoryBean is similar to the - Quartz SchedulerFactoryBean in that it serves the - same purpose: setting up the actual scheduling. The - TimerFactoryBean sets up an actual - Timer and schedules the tasks it has references - to. You can specify whether or not daemon threads should be used. - - <bean id="timerFactory" class="org.springframework.scheduling.timer.TimerFactoryBean"> - <property name="scheduledTimerTasks"> - <list> - <!-- see the example above --> - <ref bean="scheduledTask" /> - </list> - </property> -</bean> -
-