您的位置:首页 > 编程语言 > Java开发

spring中通过配置文件方式实现定时任务

2017-05-09 17:21 661 查看
Spring3.0以后自带有定时任务的实现功能:

一、修改spring配置文件的内容:在文件头添加命名空间和描述

<?xml version="1.0" encoding="UTF-8"? > 

<beans xmlns="http://www.springframework.org/schema/beans"  

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    
。。。。。。

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

   
xsi:schemaLocation="http://www.springframework.org/schema/beans

         
。。。。。。

          http://www.springframework.org/schema/task 
          http://www.springframework.org/schema/task/spring-task-3.0.xsd">  
<task:annotation-driven
/>
                  //支持注解

二、写对应程序执行时间的配置文件:创建一个task.properties配置文件,内容如下

jobs.schedule.task1=0/10
* * * * ?      //每十秒执行一次

 

jobs.schedule.task2=0 
40 * * * ?          //每个小时的四十分执行一次

  

jobs.schedule.task3=0 
30  4 * * ?           //每天的四点半执行一次

jobs.schedule.task4=0 
0/50  * * * ?      //每五十分钟执行一次

       更多时间的设置自行百度

三、对应定时任务执行类

@PropertySource("classpath:task.properties")

@Component

public class test{

     

      @Bean

      public static PropertySourcesPlaceholderConfigurer propertyConfigInDev()

      {

               return new PropertySourcesPlaceholderConfigurer();                       //加上之后spring才能识别${}中的内容

      }

     

      @Value("${jobs.schedule.task2}")

      public String abc;                                 //此时abc的内容为:0 
40 * * * ?

 

     
@Scheduled(cron = "${jobs.schedule.task1}"
)     //定义十秒执行一次

     
public void task(){

               
System.out.println("每十秒输出一次该语句");

     
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: