`
thinktothings
  • 浏览: 784896 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring2.0 job 普通类中定时任务

阅读更多
package com.tht.common.job.spring.general;

import org.apache.log4j.Logger;

/**
 * Created by IntelliJ IDEA.
 * User: liuwen
 * Date: 2010-11-6
 * Time: 20:07:46
 * To change this template use File | Settings | File Templates.
 */
public class Task {
     Logger log=Logger.getLogger(Task.class);

    /**
     * 需要执行的任务
     */
    public void execute(){
        log.info("开始执行任务了。。。。");
    }
}


  beans-config-general.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"
  xsi:schemaLocation="http://www.springframework.org/schema/beans 
  http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

    <!-- 时钟任务,执行任务时,会调用该类中的 run()方法,来执行。。。 -->
    <bean id="demoTask" class="com.tht.common.job.spring.general.Task"/>

    <!--指定任务方的调用-->
    <bean id="timerTaskBean" class="org.springframework.scheduling.timer.MethodInvokingTimerTaskFactoryBean">
        <property name="targetObject" ref="demoTask"></property>
        <property name="targetMethod" value="execute"></property>
    </bean>
    
    <bean id="scheduledTimerTask" 
          class="org.springframework.scheduling.timer.ScheduledTimerTask">
        <property name="timerTask" ref="timerTaskBean"/>
        <property name="period" value="5000"/><!--5000毫秒 即每隔5秒执行定时任务   -->
        <property name="delay" value="1000"/><!--1000毫秒 即1秒后 执行定时任务   -->
    </bean>
    
    <bean id="timerFactoryBean" 
          class="org.springframework.scheduling.timer.TimerFactoryBean">
        <property name="scheduledTimerTasks">
            <list>
                <ref bean="scheduledTimerTask"/>
            </list>
        </property>
    </bean>
    
</beans>
 

 

package com.tht.common.job.spring.general;

import com.tht.common.job.spring.DemoTask;
import org.apache.log4j.Logger;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Timer;

/**
 * Created by IntelliJ IDEA.
 * User: liuwen
 * Date: 2010-11-6
 * Time: 19:43:29
 * To change this template use File | Settings | File Templates.
 * 启动类,并控制何时关闭时钟任务
 */
public class TimerTaskDemo {
     static Logger log=Logger.getLogger(DemoTask.class);


    public static void main(String[] args){
        ApplicationContext context=new ClassPathXmlApplicationContext("beans-config-general.xml");
        log.info("启动任务。。。。。。");
        log.info("请输入exit,关闭任务");
        BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
        while(true){
            try {
                if(reader!=null && "exit".equals(reader.readLine())){
                    break;
                }
            } catch (IOException e) {
                log.error(e.getMessage(), e.fillInStackTrace());
            }
        }

        Timer timer =(Timer)context.getBean("timerFactoryBean");
        timer.cancel();
    }
}
 
分享到:
评论

相关推荐

    spring2.0学习笔记+spring定时任务

    标题 "spring2.0学习笔记+spring定时任务" 暗示了我们即将探讨的是关于Spring框架2.0版本的学习心得以及如何在Spring中配置和使用定时任务。在这个主题下,我们将深入理解Spring的核心概念,特别是它在企业级Java...

    spring2.0 Quartz 执行每天定时任务 普通普是执行任务

    标题中的“spring2.0 Quartz 执行每天定时任务 普通普是执行任务”涉及到的是在Spring 2.0框架中使用Quartz库来创建并执行每天定时任务的场景。Quartz是一款强大的开源作业调度框架,它可以用来按计划执行各种任务,...

    spring2.0 job Quartz 和Time一样的定时任务

    在本篇文章中,我们将聚焦于Spring 2.0中的Job以及Quartz这两款工具,探讨它们如何实现定时任务,以及它们与Java内置的`java.util.Timer`类(简称Time)的异同。 首先,让我们从Java自带的`Timer`类开始。`Timer`是...

    spring2.0中文手册及使用指南 chm

    Spring 2.0 是一个非常重要的Java框架,它在企业级应用开发中占据了核心地位,尤其是在基于Java的轻量级应用程序上下文(IoC)和面向切面编程(AOP)方面。本手册和使用指南提供了全面的Spring 2.0相关知识,包括其...

    SPRING2.0中文文档

    Spring 2.0 是一个里程碑式的版本,它在Java企业级开发中扮演着核心角色,为开发者提供了丰富的功能和灵活性。这份全中文的Spring 2.0技术文档是学习和理解这一版本的重要参考资料,旨在帮助中国开发者更好地掌握...

    Spring2.0中文教程

    Spring 2.0是Spring框架的一个重要版本,它在Java企业级应用开发中扮演着核心角色。本教程将深入探讨...文档`spring2.0-reference_final_zh_cn.chm`将详细阐述这些概念和技术,帮助你成为一名熟练的Spring开发者。

    spring2.0 中文教程

    7. **Spring Batch**:虽然Spring 2.0本身并不包含Spring Batch,但这是一个后续版本中引入的重要组件,用于处理批量和定时任务。Spring Batch提供了一套完整的解决方案,包括事务管理、错误处理和跟踪。 8. **国际...

    Spring 2.0 中文参考手册

    Spring 2.0 中文参考手册,Spring 2.0 中文参考手册,Spring 2.0 中文参考手册,Spring 2.0 中文参考手册Spring 2.0 中文参考手册,

    Spring2.0宝典源代码

    通过《Spring2.0宝典》的源代码,学习者可以逐步探索上述功能的实际运用,了解每个特性在项目中的实现方式,从而提升对Spring框架的理解和使用能力。在阅读源代码的过程中,建议结合书中的讲解,按照章节顺序逐步...

    spring2.0中文参考手册.rar

    《Spring 2.0 中文参考手册》是一个详尽阐述 Spring 框架核心特性和扩展功能的重要资源,尤其对于中文开发者来说,它提供了一条理解 Spring 2.0 版本的关键途径。Spring 是一个广泛应用的 Java 开发框架,以其模块化...

    spring2.0 使用 Quartz 必备包

    spring2.0 使用 Quartz 必备包 里面有: quartz-all-1.5.2.jar spring-support.jar 适合:SSH框架 spring2.0 strut2.0 hibernate3.2等

    spring 2.0中文参考手册

    Spring的TaskExecutor接口和ThreadPoolTaskExecutor类可以方便地实现异步任务和定时任务,这对于后台服务的自动化和定时运行非常有用。而RMI(Remote Method Invocation)支持则使得Spring应用能够跨网络进行分布式...

    Spring 2.0 spring 2.0 标准API

    Spring 2.0 标准API 用处不大的资源我不发

    spring2.0 jar包

    以下将详细阐述Spring 2.0中的关键知识点: 一、依赖注入(Dependency Injection,DI) 依赖注入是Spring的核心特性之一,它允许开发者通过配置文件或注解来管理对象间的依赖关系,而非硬编码在类内部。Spring 2.0...

    spring2.0 中文帮助文档 pdf

    spring2.0 中文帮助文档 spring2.0 中文帮助文档 spring2.0 中文帮助文档 spring2.0 中文帮助文档 spring2.0 中文帮助文档

    Spring 2.0中文API(chm格式)

    Spring 2.0中文API CHM文件包含了关于该版本的所有接口、类和方法的详细描述,这对于理解Spring的内部工作原理以及如何有效地利用其功能至关重要。 Spring的核心概念包括依赖注入(Dependency Injection,DI),它...

Global site tag (gtag.js) - Google Analytics