定时器任务

定时器

  • 1、引入支持定时任务的jar包
  • 2、原生定时
  • 3、使用OpenSymphony Quartz 任务调度
    • 3.1 定时器的配置文件
    • 3.2 效果
  • 4、前端原生js实现定时器(附加)

1、引入支持定时任务的jar包



	quartz
	quartz
	1.5.2

2、原生定时

@Test
public void time() throws Exception {
	// 定时器
	Timer timer = new Timer();
	// 开启定时任务(子线程)
	timer.schedule(new TimerTask() {
		@Override
		public void run() {
			System.out.println(new Date().toLocaleString());
		}
	}, 0, 1000);// 0:立即执行,1000:间隔1秒
	// 让主线程处于运行状态
	Thread.sleep(5000);
}

3、使用OpenSymphony Quartz 任务调度

点击进入【在线Cron表达式生成】

3.1 定时器的配置文件



定时器配置





    
    
    
    

    
        
        
        
    

3.2 效果

定时器任务_第1张图片

import com.yyw.aisell.service.IWorkServie;
import org.springframework.stereotype.Service;

@Service("workService") //自定义定时器配置的名字(不写默认就是类型首字母小写)
public class WorkServiceImpl implements IWorkServie {
    @Override
    public void work() {
        System.out.println("定时器执行");
    }
}

4、前端原生js实现定时器(附加)

<!--定时器按钮-->
<input type="button" value="开始" onclick="start()"/>
<input type="button" value="停止" onclick="stop()"/>

<!--定时器容器-->
<div id="showDate"></div>

<script type="text/javascript">
	var timer;
	function start(){
		//定时器方法,每过一秒就调用下面的方法执行一次展示时间
		timer = setInterval("startDate()",1000);
	}
	function startDate(){
		//创建当前时间
		var date = new Date();
		//将时间转换为正常格式
		date = date.toLocaleString();
		
		//将时间展示到定时器容器里面:每过一秒就调用一次这个方法得到的就是新的时间,实现定时器的原理
		document.getElementById("showDate").innerHTML=date;
	}
	
	//停止定时器
	function stop(){
		//调用周期定时器方法停止
		clearInterval(timer);
	}
</script>

你可能感兴趣的:(定时器任务)