Spring定时器注解配置

时间:2020-11-25 23:29:00

spring-task.xml

<?xml version="1.0" encoding="UTF-8"?>
<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:mvc="http://www.springframework.org/schema/mvc" xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:task="http://www.springframework.org/schema/task"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context-3.1.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx-3.1.xsd
        http://www.springframework.org/schema/task 
        http://www.springframework.org/schema/task/spring-task-3.1.xsd">

    <!-- 默认扫描的包路径 -->  
    <context:component-scan base-package="*" />  
    <!-- springMVC 定时器开关 -->
    <task:annotation-driven />
</beans>

web.xml(在web.xml中加入以下代码)

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/config/spring-task.xml</param-value>
</context-param>

MidTask.java

package com.henu.task;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class MidTask {

    /**  
     * 定时计算。每隔五秒执行一次
     */    
    @Scheduled(cron = "0/5 * * * * ?")   
    public void show(){ 
        System.out.println("task1");
    }
    /**  
     * 定时计算。每隔十秒执行一次
     */   
    @Scheduled(cron = "0/10 * * * * ?" )   
    public void zol(){
        System.out.println("task2");
    }
}