`
eagle0123
  • 浏览: 9803 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

spring定时任务注解实现

阅读更多
有个功能需要定时任务,由于我们的项目应用的是spring3.0,基本都基于注解来完成注入功能,所以查了一下资料,大多都是
http://zywang.iteye.com/blog/949123

和这个一样的示例,但是我按这个照着个配置做确不能运行,后来找到原因,看配置吧!

注:如果spring配置文件中指定bean的加载方式为lazy(default-lazy-init="true"),设置了定时任务的类在初始化时没有被调用,所以不能执行定时任务,这时可以把定时任务类初始化为(lazy-init ="false")
【<bean id = "task" lazy-init ="false" class = "TaskTest"></bean>】


配置文件

<?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:task="http://www.springframework.org/schema/task" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans  
        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
        http://www.springframework.org/schema/fex  
        http://www.springframework.org/schema/fex/spring-fex-1.5.xsd  
        http://www.springframework.org/schema/task   
        http://www.springframework.org/schema/task/spring-task-3.0.xsd   
        http://www.springframework.org/schema/context  
        http://www.springframework.org/schema/context/spring-context-3.0.xsd">  
    <!--加入此段配置,-->   
    <context:component-scan base-package="com.sun.task" />   
    <!-- Enables the Spring Task @Scheduled programming model -->   
    <task:executor id="executor" pool-size="1" />   
    <task:scheduler id="scheduler" pool-size="1" />   
    <task:annotation-driven executor="executor" scheduler="scheduler" />   
</beans>   



程序代码:

import java.sql.SQLException;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

@Component
public class TaskTest {

@Scheduled(fixedDelay = 1000)
void doSomethingWithDelay() throws SQLException{
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("I'm doing with delay now!");
}
}

付了代码
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics