`

Spring MVC中,实现定时任务

 
阅读更多

定时执行某段代码的功能,或者隔一段时间执行一次。

Spring框架中是使用@Scheduled注解来实现定时任务的。

 

首先在配置文件头部的必须要有:

xmlns:task="http://www.springframework.org/schema/task" 

其次xsi:schemaLocation必须为其添加:

http://www.springframework.org/schema/task  

http://www.springframework.org/schema/task/spring-task-4.0.xsd

然后spring扫描过程必须涵盖定时任务类所在的目录:

context:component-scan base-package="com.xx.xx" />

@Scheduled注解的定时任务,能够被扫描到

然后设置动作启用定时任务

<task:annotation-driven/>

 

最后,定义定时任务类

如下面代码所示:

 

    @Scheduled(cron="0 0/1 * * * ?")
    public void executeTask() {
        // TODO Auto-generated method stub
        System.out.println("*************************");
        System.out.println("**当前的时间为:"+new Timestamp((new Date()).getTime()));
        System.out.println("*************************");
    }

需要注意的几点:

 

1、spring的@Scheduled注解  需要写在实现上、

 

2、 定时器的任务方法不能有返回值(如果有返回值,spring初始化的时候会告诉你有个错误、需要设定一个proxytargetclass的某个值为true)

 

3、实现类上要有组件的注解@Component

另外,@Scheduled中的cron参数定义了执行的频率。

一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。

 

按顺序依次为

 

秒(0~59)

 

分钟(0~59)

 

小时(0~23)

 

天(月)(0~31,但是你需要考虑你月的天数)

 

月(0~11)

 

天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)

7.年份(1970-2099)

其中每个元素可以是一个值(如6),一个连续区间(9-12),一个间隔时间(8-18/4)(/表示每隔4小时),一个列表(1,3,5),通配符。

 

更详细的分析,参考http://rainbowdesert.iteye.com/blog/2107220

分享到:
评论

相关推荐

    springMVC定时任务task方式实例代码

    在Spring MVC框架中,定时任务是一项非常重要的...通过以上步骤,你可以在Spring MVC项目中轻松实现定时任务。这个实例代码提供了一个良好的起点,你可以在此基础上添加自己的业务逻辑,实现复杂且灵活的定时任务管理。

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

    在定时任务中,MyBatis常用于执行数据库相关的操作,如定期更新数据、清理过期记录等。我们可以将MyBatis的SqlSessionFactory注入到定时任务的bean中,通过SqlSession执行SQL语句。由于Spring的事务管理,这些数据库...

    Spring mvc + Mybatis + quartz + swagger 定时任务管理[新增、编辑、删除、修改]

    本项目就是基于Spring MVC、Mybatis、Quartz和Swagger实现的一个定时任务管理系统,旨在提供一种灵活且可配置的方式来管理和控制定时任务。下面将详细讲解这个系统的核心组成部分及其工作原理。 首先,Spring MVC是...

    spring mvc quartz 动态设置时间

    总之,Spring MVC与Quartz的结合提供了强大且灵活的任务调度能力,通过动态设置时间,你可以根据业务需求轻松地管理定时任务。在实际应用中,可能还需要考虑并发控制、异常处理、日志记录等其他方面,以确保系统的...

    IntelliJ IDEA中创建Spring boot项目,定时任务测试

    通过以上步骤,我们便能在IntelliJ IDEA中成功创建一个Spring Boot项目,并实现定时任务的测试。这种集成方式不仅提高了开发效率,也使得项目管理和调试变得更加便捷。在实际开发中,还可以结合其他Spring Boot特性...

    spring mvc定时任务需要的所有jar包,包括slf4j、log4j

    在Spring MVC框架中,开发定时任务是常见的需求,这通常涉及到调度器的使用,例如Quartz或Spring自己的TaskScheduler。为了实现这样的功能,我们需要引入一些关键的库,其中包括`slf4j`和`log4j`。这些库在日志处理...

    Spring基于线程池的定时任务线挰异常实践

    在Spring框架中,定时任务和线程池是两个非常重要的组件,它们可以帮助我们实现高效的后台任务处理。这篇博文“Spring基于线程池的定时任务线程异常实践”深入探讨了如何在Spring中结合线程池来执行定时任务,并且...

    综合spring mvc + spring + hibernate + bootstrap开发图书管理系统

    7. **任务调度**:使用Quartz或Spring Task进行定时任务,如自动提醒借阅到期的用户。 8. **邮件服务**:集成SMTP发送邮件通知,如注册验证、借阅提醒等。 9. **报表生成**:如使用JasperReports或iText生成统计报告...

    Spring MVC示例

    在Spring中,也可以使用`@Scheduled`注解配合`TaskScheduler`或`ThreadPoolTaskScheduler`来实现定时任务。 4. **文件上传下载**: 文件上传通常使用了Spring MVC的`CommonsMultipartResolver`,这是一个多部分...

    Spring2.5+Quartz定时任务简单例子web工程

    在"Spring2.5+Quartz定时任务简单例子web工程"中,我们可以看到这两个框架的结合使用,主要目标是实现基于 Web 应用的定时任务管理。以下将详细介绍这个项目中可能涉及的知识点: 1. **Spring 2.5**: - **依赖...

    Spring 3整合Quartz 2实现定时任务三:动态暂停 恢复 修改和删除任务

    Spring 3整合Quartz 2实现定时任务三:动态暂停 恢复 修改和删除任务,原http://blog.csdn.net/phantomes/article/details/37880551博客的源码例子

    spring-schedule动态刷新定时任务

    最近公司在做一个定时任务,前期采用spring自带的schedule。 场景:添加日程提醒功能。需要进行动态刷新定时任务。因为以前公司都是使用第三方, 比如xxl-job。所有有点不熟悉schedule.参考了网上一些相关资料。写了...

    spring mvc 定时

    在Spring MVC框架中实现定时任务是一项常见的需求,特别是在企业级应用中,往往需要根据特定时间进行数据处理、报表生成或发送通知等操作。本篇将详细介绍如何在Spring MVC中配置和使用定时任务,并结合数据库中设置...

    Spring MVC框架实例

    - 集成其他中间件,如 Redis 缓存、Quartz 定时任务等。 总结,Spring MVC 为开发者提供了灵活且强大的 Web 开发框架,通过 XML 配置,我们可以自定义各个组件,实现复杂的应用场景。随着版本的升级,Spring 逐渐...

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

    下面我们将深入探讨这些组件及其在动态定时任务中的应用。 首先,Spring框架是Java企业级应用开发的核心,它提供了一个全面的编程和配置模型,用于简化企业级应用的复杂性。Spring的核心特性包括依赖注入(DI)和...

    定时器的配置文件(两种方式:springmvc自带定时,Quartz与spring结合的定时)

    本篇文章将详细讲解两种在Spring MVC框架中实现定时任务的方法:Spring MVC自带的定时器以及Quartz与Spring的集成。 首先,我们来看看Spring MVC自带的定时任务。Spring MVC作为Spring框架的一个模块,主要处理HTTP...

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

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

    Spring3.0 mvc 定时器及多线程任务demo

    此时,可以在定时任务中调用标记了`@Async`的方法,实现定时任务和多线程任务的完美结合。 总结,Spring 3.0 MVC中的定时器和多线程任务是提升应用程序效率的重要工具。定时器可以帮助我们定期执行特定任务,而多...

    springmvc+spring+mysql+maven定时任务

    在定时任务中,它通常用于存储和查询数据,例如记录任务执行状态、时间戳等。 `Maven`是项目管理和构建工具,它管理项目的依赖关系,提供了一套标准的方式来构建和打包Java项目。在本例中,Maven将帮助我们整合所有...

    spring+mvc+quartz.rar

    《Spring MVC + Quartz 整合实现定时任务管理》 在现代企业级应用中,系统往往需要执行一些定时任务,如数据同步、报表生成等。Spring框架以其强大的功能和灵活的扩展性,成为Java开发的首选,而Quartz作为一款开源...

Global site tag (gtag.js) - Google Analytics