spring task 注解+xml的demo

来源:互联网 发布:等高线地图软件 编辑:程序博客网 时间:2024/06/07 16:43
@Service@EnableSchedulingpublic class Annotation {    @Scheduled(fixedDelay = 5000)    public void fixedDelayTask() throws InterruptedException {        System.out.println("anno 1,fixedDelay = 5000");    }    @Scheduled(fixedRate = 6000)    public void fixedRateTask() {        System.out.println("anno 2,fixedRate = 6000");    }    @Scheduled(fixedRate = 7000, initialDelay = 2000)    public void fixedRateWithInitialDelayTask(){        System.out.println("anno 3,fixedRate = 7000, initialDelay = 2000");    }    @Scheduled(cron = "10 * * * * *")    public void cronTask(){        System.out.println("anno 4,cron = \"10 * * * * *\"");    }    @Scheduled(cron = "${cron.expression}")    public void useProperties()    {        System.out.println("Method executed at every 5 seconds. Current time is :: "+ new Date());    }}



public class Xml {    public void xmlFixedDelayTask() {        System.out.println("xml1:  fixed delay");    }    public void xmlFixedRateTask() {        System.out.println("xml2: fixed rate");    }    public void xmlCronTask() {        System.out.println("xml3: cron schedule");    }}

public class SpringScheduleDemo {    public static void main(String[] args) {        ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");    }}



cron.expression=*/1 * * * * ?

<beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:task="http://www.springframework.org/schema/task"       xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd">    <context:component-scan base-package="com.mycuteblog.spring"/>    <context:property-placeholder location="classpath:application.properties" /><!--    <bean id="xmlScheduledTasks" class="com.mycuteblog.spring.schedule.Xml"/>    <task:scheduler id="taskScheduler" pool-size="10"/>    <task:scheduled-tasks>        <task:scheduled ref="xmlScheduledTasks" method="xmlFixedDelayTask" fixed-delay="8000"/>        <task:scheduled ref="xmlScheduledTasks" method="xmlFixedRateTask" fixed-rate="10000"/>        <task:scheduled ref="xmlScheduledTasks" method="xmlCronTask" cron="15 * * * * *"/>    </task:scheduled-tasks>--></beans>


<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    <modelVersion>4.0.0</modelVersion>    <groupId>com.mycuteblog</groupId>    <artifactId>spring-schedule</artifactId>    <version>1.0-SNAPSHOT</version>    <dependencies>        <dependency>            <groupId>org.springframework</groupId>            <artifactId>spring-context</artifactId>            <version>4.0.6.RELEASE</version>        </dependency>    </dependencies>    <!--configurations to run project standalone-->    <build>        <plugins>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-jar-plugin</artifactId>                <version>2.4</version>                <configuration>                    <archive>                        <manifest>                            <addClasspath>true</addClasspath>                            <mainClass>com.mycuteblog.spring.schedule.SpringScheduleDemo</mainClass>                            <classpathPrefix>dependency-jars/</classpathPrefix>                        </manifest>                    </archive>                </configuration>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-dependency-plugin</artifactId>                <version>2.5.1</version>                <executions>                    <execution>                        <id>copy-dependencies</id>                        <phase>package</phase>                        <goals>                            <goal>copy-dependencies</goal>                        </goals>                        <configuration>                            <outputDirectory>                                ${project.build.directory}/dependency-jars/                            </outputDirectory>                        </configuration>                    </execution>                </executions>            </plugin>        </plugins>    </build></project>




0 0
原创粉丝点击