From 68ff312941602924e9ba0d7c15f8f5cd0abc6b11 Mon Sep 17 00:00:00 2001 From: mgooty Date: Mon, 20 Oct 2014 15:50:41 +0530 Subject: [PATCH] Added XML configurations to schedule tasks. --- .../ScheduledAnnotationExample.java | 2 +- .../scheduling/SchedulingWithXmlConfig.java | 16 +++++++++++++ .../scheduling/SpringSchedulingConfig.java | 4 ++-- .../main/resources/springScheduled-config.xml | 24 ++++++++++++------- .../main/resources/springScheduled.properties | 4 ++-- .../ScheduledAnnotationExampleTest.java | 3 +-- .../SchedulingWithXmlConfigTest.java | 16 +++++++++++++ 7 files changed, 53 insertions(+), 16 deletions(-) create mode 100644 spring-all/src/main/java/org/baeldung/scheduling/SchedulingWithXmlConfig.java create mode 100644 spring-all/src/test/java/org/baeldung/scheduling/SchedulingWithXmlConfigTest.java diff --git a/spring-all/src/main/java/org/baeldung/scheduling/ScheduledAnnotationExample.java b/spring-all/src/main/java/org/baeldung/scheduling/ScheduledAnnotationExample.java index aa4c8c1466..284bcf5e6a 100644 --- a/spring-all/src/main/java/org/baeldung/scheduling/ScheduledAnnotationExample.java +++ b/spring-all/src/main/java/org/baeldung/scheduling/ScheduledAnnotationExample.java @@ -3,7 +3,7 @@ package org.baeldung.scheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; -@Component +@Component("scheduledAnnotationExample") public class ScheduledAnnotationExample { @Scheduled(fixedDelay = 1000) diff --git a/spring-all/src/main/java/org/baeldung/scheduling/SchedulingWithXmlConfig.java b/spring-all/src/main/java/org/baeldung/scheduling/SchedulingWithXmlConfig.java new file mode 100644 index 0000000000..d7da9ac19c --- /dev/null +++ b/spring-all/src/main/java/org/baeldung/scheduling/SchedulingWithXmlConfig.java @@ -0,0 +1,16 @@ +package org.baeldung.scheduling; + +public class SchedulingWithXmlConfig { + + public void scheduleFixedDelayTask() { + System.out.println("Fixed delay task - " + System.currentTimeMillis() / 1000); + } + + public void scheduleFixedRateTask() { + System.out.println("Fixed rate task - " + System.currentTimeMillis() / 1000); + } + + public void scheduleTaskUsingCronExpression() { + System.out.println("schedule tasks using cron expressions - " + System.currentTimeMillis() / 1000); + } +} diff --git a/spring-all/src/main/java/org/baeldung/scheduling/SpringSchedulingConfig.java b/spring-all/src/main/java/org/baeldung/scheduling/SpringSchedulingConfig.java index b765001bf5..1d81fa0aa8 100644 --- a/spring-all/src/main/java/org/baeldung/scheduling/SpringSchedulingConfig.java +++ b/spring-all/src/main/java/org/baeldung/scheduling/SpringSchedulingConfig.java @@ -9,8 +9,8 @@ import org.springframework.scheduling.annotation.EnableScheduling; @Configuration @EnableScheduling -@ComponentScan("com.baeldung.spring.integration") -@PropertySource("classpath:springIntegration.properties") +@ComponentScan("org.baeldung.scheduling") +@PropertySource("classpath:springScheduled.properties") public class SpringSchedulingConfig { @Bean diff --git a/spring-all/src/main/resources/springScheduled-config.xml b/spring-all/src/main/resources/springScheduled-config.xml index 78240c02e4..68d42fdd57 100644 --- a/spring-all/src/main/resources/springScheduled-config.xml +++ b/spring-all/src/main/resources/springScheduled-config.xml @@ -1,20 +1,26 @@ - + + - - + + + - - - + + + \ No newline at end of file diff --git a/spring-all/src/main/resources/springScheduled.properties b/spring-all/src/main/resources/springScheduled.properties index 9bd0713ecd..336fc83937 100644 --- a/spring-all/src/main/resources/springScheduled.properties +++ b/spring-all/src/main/resources/springScheduled.properties @@ -1,3 +1,3 @@ cron.expression=0 15 10 15 * ? -fixedRate.in.millisecons=1000 -fixedDelay.in.millisecons=1000 \ No newline at end of file +fixedRate.in.milliseconds=1000 +fixedDelay.in.milliseconds=1000 \ No newline at end of file diff --git a/spring-all/src/test/java/org/baeldung/scheduling/ScheduledAnnotationExampleTest.java b/spring-all/src/test/java/org/baeldung/scheduling/ScheduledAnnotationExampleTest.java index 97807200cf..9317c7bb7f 100644 --- a/spring-all/src/test/java/org/baeldung/scheduling/ScheduledAnnotationExampleTest.java +++ b/spring-all/src/test/java/org/baeldung/scheduling/ScheduledAnnotationExampleTest.java @@ -1,6 +1,5 @@ package org.baeldung.scheduling; -import org.baeldung.scheduling.SpringSchedulingConfig; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; @@ -13,6 +12,6 @@ public class ScheduledAnnotationExampleTest { @Test public void testScheduledAnnotation() throws InterruptedException { - Thread.sleep(20000); + Thread.sleep(5000); } } diff --git a/spring-all/src/test/java/org/baeldung/scheduling/SchedulingWithXmlConfigTest.java b/spring-all/src/test/java/org/baeldung/scheduling/SchedulingWithXmlConfigTest.java new file mode 100644 index 0000000000..0fca4d21c8 --- /dev/null +++ b/spring-all/src/test/java/org/baeldung/scheduling/SchedulingWithXmlConfigTest.java @@ -0,0 +1,16 @@ +package org.baeldung.scheduling; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration("classpath:springScheduled-config.xml") +public class SchedulingWithXmlConfigTest { + + @Test + public void testXmlBasedScheduling() throws InterruptedException { + Thread.sleep(5000); + } +}