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

Spring2.0 job 定时任务

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

import java.util.TimerTask;
import org.apache.log4j.Logger;

/**
 * Created by IntelliJ IDEA.
 * User: liuwen
 * Date: 2010-11-6
 * Time: 19:34:49
 * To change this template use File | Settings | File Templates.
 * 需要执行的任务
 */
public class DemoTask extends TimerTask{
    Logger log=Logger.getLogger(DemoTask.class);

    /**
     * 需要执行的任务写在这里
     */
    @Override
    public void run() {
        log.info("run");
    }
}

 

beans-config.xml  放到src目录下

 

<?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">
  
    <bean id="demoTask" class="com.tht.common.job.spring.DemoTask"/><!-- 时钟任务,执行任务时,会调用该类中的 run()方法,来执行。。。 -->
    
    <bean id="scheduledTimerTask" 
          class="org.springframework.scheduling.timer.ScheduledTimerTask">
        <property name="timerTask" ref="demoTask"/>
        <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;

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.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 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 job 普通类中定时任务

    Spring 2.0版本引入了Spring Task模块,为应用程序提供了强大的定时任务支持。本篇文章将深入探讨如何在Spring 2.0中使用普通类来配置和执行定时任务。 首先,我们需要了解Spring Task的基本概念。Spring Task,也...

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

    标题中的“spring2.0学习笔记+spring定时任务”表明了这个压缩包文件包含的是关于Spring框架2.0版本的学习资料,特别是关于Spring的定时任务功能。Spring是Java开发中最广泛应用的轻量级框架之一,它提供了一整套...

    spring2.0 Quartz 执行每天定时任务 建议用quartz-all-1.8.4.jar更稳定,兼容性更好

    标题中的“Spring 2.0 Quartz 执行每天定时任务”是指使用Spring框架的Quartz集成来创建一个每天自动执行的任务。Quartz是一个开源的作业调度框架,它允许开发者定义和调度任务,以便在指定的时间自动运行。在Spring...

    Quartz与Spring2.0整合Eclipse例程

    将Quartz与Spring结合使用,可以方便地在Spring管理的bean中定义和调度任务,实现灵活且可扩展的定时任务解决方案。 在"Quartz与Spring2.0整合Eclipse例程"中,我们将探讨如何在Eclipse开发环境中配置和运行一个...

    SpringBoot2.0整合Quartz定时任务,实现基于数据库如mysql的动态任务

    在Spring Boot 2.0中整合Quartz定时任务,可以实现基于数据库如MySQL的动态任务管理,这在很多需要周期性执行任务的应用场景中非常实用。以下将详细讲解这一过程。 首先,我们要在项目的`pom.xml`文件中添加Quartz...

    xml方式定时任务

    在Java领域,最常用的定时任务框架是Quartz和Spring的Task调度器,它们都可以通过XML配置文件来设定任务的执行计划。 ### Quartz XML配置 Quartz是一个强大的、完全开源的作业调度框架,它支持复杂的时间表和任务...

    springboot2.0整合quartz

    在Spring Boot 2.0中整合Quartz,可以利用这些新特性来构建更高效、更灵活的定时任务系统。 整合Quartz与Spring Boot 2.0的方式主要是通过`spring-boot-starter-quartz`模块。这个模块提供了与Spring Boot自动配置...

    spring+quartz定时器

    让我们深入探讨一下这个"spring2.0+quartz1.6定时器"的工作原理和实现细节。 首先,Spring框架是一个广泛应用的开源Java框架,它提供了依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented ...

    spring常用配置

    Spring支持多种定时任务的实现方案,其中较为常见的是与Quartz的集成。Quartz是一个功能强大的作业调度库,可以方便地与Spring框架集成,用于实现复杂的定时任务需求。 - **开发环境**:Spring 2.0及以上版本,需要...

    Quartz2.0持久化到数据库

    Quartz2.0是一款强大的开源任务调度框架,广泛应用于Java应用程序中,用于执行定时和周期性的任务。在“Quartz2.0持久化到数据库”这个主题中,我们将深入探讨如何将Quartz2.0的任务调度信息存储到数据库中,以便在...

    QuartzSpring

    下面是一个简单的Spring+Quartz的定时任务例子: 1. 创建一个Java Bean类,比如`QuartzJob`,其中定义了一个需要定时执行的方法`work()`: ```java package Test; public class QuartzJob { public void work() {...

    quartzdemo

    - 在Spring框架中,可以使用`@EnableScheduling`开启定时任务支持。 - 配置`quartz.properties`文件,定制Quartz的行为,如数据库存储Job和Trigger信息。 6. **监控与管理**: - Quartz提供Web管理界面`...

    flowable6.6.0 源码包和部署包

    4. **任务调度**:Flowable内置了定时任务管理,源码中的JobExecutor类和相关的定时任务配置,展示了如何处理异步任务和定时触发器。 5. **事件监听**:Flowable支持自定义事件监听器,通过...

    Quartz,EJB资料

    Quartz是一款开源的作业调度框架,它允许开发者在Java应用中定义定时任务,实现复杂的调度逻辑。EJB(Enterprise JavaBeans)则是Java EE平台的一部分,主要用于构建可复用的、安全的、分布式的企业级应用程序。在...

    基于springboot的设备管理系统+源代码+文档说明

    │ │ ├─job 定时任务 │ │ ├─oss 文件存储 │ │ └─sys 系统管理(核心) │ │ │ └─resources │ ├─mapper MyBatis文件 │ ├─statics 静态资源 │ ├─template 系统页面 │ │ ├─modules 模块...

    数据结构 activiti5.22.pdb,activiti5.22.pdm

    - **Job**:定时任务,`ACT_RU_JOB`表用于调度异步任务,如定时启动任务、超时处理等。 - **Event**:事件,`ACT_RU_EVENT_SUBSCR`表用于管理流程中的事件订阅,如信号事件、消息事件等。 - **Identity Links...

    Activiti6 中文 用户指南 操作手册 开发API

    - **Job Executor**:用于执行定时任务,从6.0.0版本开始引入。 - **事件处理程序**:可以监听并响应流程中的特定事件,如流程开始、结束等。 4. **Activiti API** - **Process Engine API和服务**:提供与流程...

    Activiti6 中文 用户指南.docx

    - **Job Executor**:从6.0.0版本开始,Job Executor负责执行定时任务和补偿任务,例如,处理异步行为。 - **邮件服务器配置**:配置邮件服务器信息,以便Activiti能发送通知邮件。 4. **API**: - **Process ...

Global site tag (gtag.js) - Google Analytics