`

Spring 启动定时任务

阅读更多
项目中经常会遇到需要定时处理的问题,常规方法我们会采用TimerTask,如果用到了SSH整合时,我们就可以使用Sping来进行定时任务了,所有定时任务全部通过配置文件完成,具体步骤如下。


1.为定时处理的BEAN创建基本配置
//SyncTask是一个普通的类,里面有定时处理的方法
<bean id="job" class="cn.net.withub.ncs.SyncTask" scope="singleton" />


2.详细的调用配置,配置出调用那个类"targetObject"和具体执行那个方法"targetMethod"
<bean id="callGirlServiceInvokingJobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
scope="singleton">
<property name="targetObject">
<ref bean="job" />
</property>
<property name="targetMethod">
<value>syncNews</value>
</property>
</bean>

3.配置定时器的详细触发时间 jobDetail是配置好执行类和执行方法的bean,cronExpression是配置具体哪个时间触发方法,具体的配置规则可以参考http://www.blogjava.net/javainthink/archive/2006/10/19/76077.html

<bean id="cronCallTrgger"
class="org.springframework.scheduling.quartz.CronTriggerBean"
scope="singleton">
<property name="jobDetail">
<ref bean="callGirlServiceInvokingJobDetail" />
</property>
<property name="cronExpression">
<value>0,10,20,30,40,50 * * * * ?</value>
</property>
</bean>

4.这是一个统一的任务触发列表,Spring会调用这个列表里面的定时任务执行。
<bean
class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
scope="singleton">
<property name="triggers">
<list>
<ref bean="cronCallTrgger"></ref>
</list>
</property>
</bean>

注:定时任务的配置其实就是从Spring的指定类注册到Spring文件中,然后把我们的各参数转入到指定类中,最后加入初始列表中。
分享到:
评论

相关推荐

    Spring3.0定时任务简单实例web工程

    总结来说,这个"Spring3.0定时任务简单实例web工程"提供了一个使用Spring 3.0实现定时任务的实例,通过配置`TaskScheduler`,定义任务类,使用`@Scheduled`注解设置执行计划,最后在Web应用启动时启动任务,可以方便...

    spring自带定时任务程序

    这个文档应该详细介绍了每个步骤,包括如何在Spring环境中注册和启动定时任务,如何编写带有`@Scheduled`注解的方法,以及如何编写测试用例来验证定时任务的正确性。 6. **应用实践**: Spring的定时任务功能在...

    Spring中定时任务

    6. 在Eclipse中,配置项目的启动方式,确保Spring的ApplicationContext被加载,并且定时任务能够正常启动。 总的来说,Spring的定时任务功能为开发者提供了极大的灵活性和便利性,无论是简单的周期性任务还是复杂的...

    spring xml 定时任务

    在Spring框架中,XML配置是传统且广泛使用的方式来设置应用的组件和行为,包括实现定时任务。定时任务在软件开发中扮演着重要角色,它允许应用程序在预设的时间执行特定的任务,例如数据清理、日志归档或者发送通知...

    Spring定时任务实现(非Web项目)

    3. **启动应用**:确保你的应用正常启动后,Spring的定时任务就会按照设定自动开始执行。 此外,`@Scheduled`注解还支持其他参数,比如`cron`表达式,可以实现更复杂的定时规则。例如: ```java @Scheduled(cron =...

    spring定时任务关键jar包(齐全)

    6. **配置与启动**: 要使定时任务生效,你需要在Spring配置中启用定时任务扫描,并指定`TaskScheduler`的实现。这通常在配置类的`@Configuration`和`@EnableScheduling`注解下完成。 7. **测试和监控**: 对于定时...

    spring boot定时任务接收邮件并且存储附件的方法讲解

    关于 Spring Boot 定时任务接收邮件并且存储附件的方法讲解 Spring Boot 是一个基于 Java 的框架,它提供了许多实用的功能,包括定时任务。在 Spring Boot 中实现定时任务非常简单,只需要使用两个注解:`@...

    spring+quartz动态定时任务创建 +mybatis

    在Spring中整合Quartz,我们可以利用Spring的管理能力,如bean的生命周期管理和事务管理,来更方便地创建和管理定时任务。 **Spring+Quartz动态定时任务创建** 将Spring与Quartz结合,我们可以方便地在运行时动态...

    SpringCloudSchedule定时任务

    `@Component`表示该类是一个Spring管理的Bean,`@EnableScheduling`则会启动定时任务扫描,寻找标记有`@Scheduled`的方法。例如: ```java import org.springframework.beans.factory.annotation.Autowired; import...

    Spring定时任务(Web项目)

    1. 定时任务通常在Spring容器启动后立即运行,因此需要确保Spring容器在Web应用启动时已完成初始化。 2. 如果定时任务涉及数据库操作,需要确保数据库连接已经建立并可用。 3. 为了防止并发执行,可使用`@...

    spring动态配置定时任务

    在Java Spring框架中,动态配置定时任务是一项非常实用的功能,它允许我们根据需求灵活地更改或添加定时任务,而无需每次改动都重启应用。本文将深入探讨如何在Spring中实现这种动态配置,以及如何结合数据库来管理...

    spring的自带定时任务

    Spring框架作为一个强大的企业级应用开发平台,提供了许多优秀的特性,其中之一就是其内置的定时任务功能。这个特性使得开发者无需依赖其他外部任务调度库,如Quartz或Cron,就能在Spring应用中轻松实现定时任务的...

    springboot定时任务的动态开启关闭

    在Spring Boot应用中,定时任务是一项非常实用的功能,它允许我们按照预定的时间间隔执行特定的任务。Spring Boot提供了Spring Scheduler抽象来实现这样的需求,使得开发者能够方便地管理和控制定时任务。本篇文章将...

    Spring3.2.6定时任务+线程池.docx

    ### Spring3.2.6定时任务与线程池配置详解 #### 一、背景介绍 在现代软件开发中,为了提高系统的并发处理能力和资源利用率,往往需要利用到多线程技术来实现定时任务的处理。Spring框架作为Java企业级应用开发中的...

    Spring定时任务的简单例子

    6. **启动定时任务** 在Spring Boot的主类上添加`@EnableScheduling`注解,这将启动一个后台任务调度器,自动扫描并执行所有带`@Scheduled`注解的方法。 ```java import org.springframework.boot....

    Spring定时任务

    Spring定时任务是Spring框架中的一个强大特性,它允许开发者在应用程序中设置定时任务,以便在预定义的时间间隔执行特定的任务。这个功能对于实现自动化、批处理、数据同步、监控等多种业务场景非常有用。在本篇中,...

    spring定时任务实例

    在Spring框架中,定时任务是一项重要的功能,它允许开发者在特定的时间间隔内执行特定的任务,无需手动触发。这个实例是关于如何在Spring中配置和使用定时任务,同时结合MyBatis来向数据库插入数据。接下来,我们将...

    Spring普通定时任务和动态设置定时任务

    ### Spring 普通定时任务与动态设置定时任务详解 #### 一、Spring 定时任务简介 在软件开发过程中,经常会遇到需要周期性执行的任务,例如数据备份、定时发送邮件等。对于这类需求,Spring 提供了一种简单且灵活的...

Global site tag (gtag.js) - Google Analytics