定時任務調度池

第一步:定義兩個類java

Task3spring

package group.esperanto.util;

import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component   //必須標記爲一個Spring管理的JavaBean類
public class MyTask3 {   //不須要繼承任何子類
	
	@Scheduled(fixedRate=2000) //設置爲兩秒一執行   間隔觸發	
   public void excJob() {
	   System.out.println("【MyTask3】當前日期:  " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
   }
}

Task4app

package group.esperanto.util;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.concurrent.TimeUnit;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component   //必須標記爲一個Spring管理的JavaBean類
public class MyTask4 {
	@Scheduled(cron="* * * * * ?" )  // 一秒一執行    定時觸發
   public void excJob() {
		try{
			// 休息5秒再繼續執行
			TimeUnit.SECONDS.sleep(5);
		}catch (Exception e) {
			
		}
		System.out.println("【MyTask4】當前日期:  " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
   }
}

第二步:修改applicationContext文件code

<task:annotation-driven/>
<!-- 定義一個任務調度池,可並行調度20個任務 -->
<task:scheduler id="schedulerPool" pool-size="20"/>
<context:annotation-config/>
<context:component-scan base-package="cn.mldn"/>
相關文章
相關標籤/搜索