spring3使用task注记及task:annotation-driven解决定时问题

定义一个定时操作

package com.jCuckoo.demo;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.scheduling.annotation.Scheduled;

public class Singer {
	
	
	//@Scheduled(fixedDelay=1000)  //第一种方式
	//fixedDelay延时多少毫秒,多少毫秒执行一次
	@Scheduled(cron="0 * * * * *")     //第二种方式

	/*
		1 Seconds (0-59)
		2 Minutes (0-59)
		3 Hours (0-23)
		4 Day of month (1-31)
		5 Month (1-12 or JAN-DEC)
		6 Day of week (1-7 or SUN-SAT)
		7 Year (1970-2099)
		取值:可以是单个值,如6;
			也可以是个范围,如9-12;
			也可以是个列表,如9,11,13
			也可以是任意取值,使用*
	*/
	//0 * * * * * 代表每分钟执行一次
	/*
	 	2011-09-07 09:23:00
		2011-09-07 09:24:00
		2011-09-07 09:25:00
		2011-09-07 09:26:00
	 */
	public void singing(){
		Date date=new Date();
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
		System.out.println(sdf.format(date));
	}
}

spring配置文件如下:



	
	

测试类
package com.jCuckoo.demo;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainTest {
	public static void main(String[] args) {
		ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
		Singer singer=(Singer) context.getBean("singer");
	}
}

结果:

2011-09-07 09:23:00
2011-09-07 09:24:00
2011-09-07 09:25:00
2011-09-07 09:26:00


你可能感兴趣的:(J2EE)