spring实现定时任务的两种方式

摘要:
--定时任务--˃此时,可以直接使用@Scheduled。应用此注释可以实现定时@Scheduled(cron=“0/5***?”)//每5秒执行一次计划任务publicvoid consoleInfo(){System.out.println;}。第二种方法是在不使用注释的情况下实现调度任务,并在spring配置文件中实现计时功能。

本文为博主原创,未经允许不得转载

       项目中要经常事项定时功能,在网上学习了下用spring的定时功能,基本有两种方式,在这里进行简单的总结,

以供后续参考,此篇只做简单的应用。

       1.在spring-servlet.xml文件中加入task的命名空间:

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"

      然后使用task配置扫描注解

<!-- 定时任务 -->
    <task:annotation-driven scheduler="qbScheduler" mode="proxy"/>  
    <task:scheduler   />  

    此时就可以直接使用@Scheduled(cron = "时间格式串"),应用该注解就可以实现定时的功能

 @Scheduled(cron = "0/5 * * * * ?")  //每隔5秒执行一次定时任务
    public void consoleInfo(){
        System.out.println("定时任务");
    }

第二种方法为:不使用注解实现定时任务,将定时的功能在spring配置文件中实现。

xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation=" http://www.springframework.org/schema/task   
        http://www.springframework.org/schema/task/spring-task-3.0.xsd”


<description> 定时任务 </description>
//定时注解驱动 <task:annotation-driven /> //进行定时任务的类,将其定义为一个bean <bean class="com.pojo.system.manager.sigar.impl.SpaceStatisticsServiceImpl"></bean>
//通过task标签,定义定时功能 <task:scheduled-tasks> <task:scheduled ref="spaceStatisticsService" method="statisticSpace" cron="59 59 23 * * ?" /> </task:scheduled-tasks>

要实现的代码部分为:

       

@Service
public class SpaceStatisticsServiceImpl implements SpaceStatisticsService
{
    @Override
    public void statisticSpace()
    {
        System.out.println("实现定时功能");
    }
}

总结:两种方法都能实现定时的功能,但明显第一种方式会比较简洁,而且更加方便。

免责声明:文章转载自《spring实现定时任务的两种方式》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇小目标检测技术分析人大金仓数据库搭建注意事项下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

彻底搞懂Spring类加载(注解方式)

单例预加载默认 单例懒加载   正确的加载时机   错误的加载时机 多例懒加载仅支持懒加载 spring beanfactory类高级用法   反射方式加载类 需要注意的问题 通过 Spring 注册的类一共只有三种加载方式! 环境:spring-context 4.2.6jdk 8Eclipse 4.7 最简单的配置 <?xml ve...

一个 XSD 实例

一个 XSD 实例 本节会为您演示如何编写一个 XML Schema。您还将学习到编写 schema 的不同方法。 XML 文档 让我们看看这个名为 "shiporder.xml" 的 XML 文档: <?xml version="1.0" encoding="ISO-8859-1"?> <shiporder orderid="88...

SaaS模式应用之多租户系统开发(单数据库多Schema设计)

SaaS是Software-as-a-Service(软件即服务)的简称,这边具体的解释不介绍。 多租户的系统可以应用这种模式的思想,将思想融入到系统的设计之中。 一、多租户的系统,目前在数据库存储上,一般有三种解决方案: 1.独立数据库 2.共享数据库,隔离数据架构 3.共享数据库,共享数据架构 这里我就系统的实际需求情况,选择了第二种解决方案,下面简单...

Spring batch学习 详细配置解读(3)

     第一篇讲到普通job 配置 那么spring  batch 给我们提供了丰富的配置,包括定时任务,校验,复合监听器,父类,重启机制等。              下面看一个动态设置读取文件的配置                 1.动态文件读取            <?xml version="1.0" encoding="UTF-8"?...

简单MVC项目搭建--Java1.7+Eclipse luna + Maven 3.2.5 +spring 4.1.4

转载请注明出处:http://www.cnblogs.com/mybest/p/4265872.html 1、 环境配置 a) Java 1.7 b) Eclipse luna c) Maven3.2.5 d) Spring 4.1.4 2、 创建maven工程 a) 打开eclipse,file->new->project->Maven...

【翻译】Flink Table API &amp;amp; SQL 自定义 Source &amp;amp; Sink

本文翻译自官网:https://ci.apache.org/projects/flink/flink-docs-release-1.10/dev/table/sourceSinks.html TableSource 提供访问存储在外部系统(数据库、key-value 存款,消息队列)或文件中的数据的权限。TableSource 在 TableEnviron...