精华内容
下载资源
问答
  • 定时器

    2020-03-21 18:59:18
    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器: Quartz下载地址:...

    是什么

    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器:
    Quartz下载地址:http://www.quartz-scheduler.org/downloads/

    怎么做

    1、创建项目
    在这里插入图片描述
    2、自定义继承QuartzJobBean抽象类的任务类:

    package com.jd.job;
    
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    import org.springframework.scheduling.quartz.QuartzJobBean;
    
    public class BackupJob extends QuartzJobBean{
    
    	private String message;
    	
    	@Override
    	protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException {
    		System.out.println(message+"正在备份数据....");
    	}
    
    	public String getMessage() {
    		return message;
    	}
    
    	public void setMessage(String message) {
    		this.message = message;
    	}
    
    }
    
    

    3、创建application.xml文件,配置定时器:

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    	<!-- 
    		JobDetailFactoryBean设置任务信息工厂
    		jobClass = 要执行定时任务的类 
    		jobDataAsMap = 用于向任务类对象中注入信息,即可以注入值,也可以引用另一个变量 
    	-->
    	<!-- 任务详细信息 -->
    	<bean id="detail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
    		<property name="jobClass" value="com.jd.job.BackupJob"></property>
    		<property name="jobDataAsMap">
    			<map>
    				<entry key="message" value="Oracle"></entry>
    			</map>
    		</property>
    	</bean>
    	
    	<!-- 什么时候做 -->
    	<bean id="trigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
    		<property name="jobDetail" ref="detail"></property>
    		<!-- 指定延迟时间 -->
    		<property name="startDelay" value="1000"></property>
    		<!-- 指定重复频率 -->
    		<property name="repeatInterval" value="2000"></property>
    	</bean>
    	
    	<!-- 谁去做 -->
    	<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    		<property name="triggers">
    			<list>
    				<ref bean="trigger"/>
    			</list>
    		</property>
    	</bean>
    </beans>
    
    
    <!-- 
    	CronTriggerFactoryBean 指定某个时间允许任务 
    -->
    <bean id="cronReportTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
    <!-- 指定任务详细信息 -->
    	<property name="jobDetail" ref="reportJob" />
    	<!-- 通过表达式设置特定的时间点执行:每秒执行一次 -->
    	<property name="cronExpression" value="* * * * * ? *" />
    </bean>
    

    常用cron表达式:
    “0 0 12 * * ?” 每天中午12点触发
    “0 15 10 ? * *” 每天上午10:15触发
    “0 15 10 * * ?” 每天上午10:15触发
    “0 15 10 * * ? *” 每天上午10:15触发
    “0 15 10 * * ? 2005” 2005年的每天上午10:15触发
    “0 * 14 * * ?” 在每天下午2点到下午2:59期间的每1分钟触发
    “0 0/5 14 * * ?” 在每天下午2点到下午2:55期间的每5分钟触发
    “0 0/5 14,18 * * ?” 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
    “0 0-5 14 * * ?” 在每天下午2点到下午2:05期间的每1分钟触发
    “0 10,44 14 ? 3 WED” 每年三月的星期三的下午2:10和2:44触发
    “0 15 10 ? * MON-FRI” 周一至周五的上午10:15触发
    “0 15 10 15 * ?” 每月15日上午10:15触发
    “0 15 10 L * ?” 每月最后一日的上午10:15触发
    “0 15 10 ? * 6L” 每月的最后一个星期五上午10:15触发
    “0 15 10 ? * 6L 2002-2005” 2002年至2005年的每月的最后一个星期五上午10:15触发
    “0 15 10 ? * 6#3” 每月的第三个星期五上午10:15触发
    “0 6 * * *” 每天早上6点
    “0 */2 * * *” 每两个小时
    “0 23-7/2,8 * * *” 晚上11点到早上8点之间每两个小时,早上八点
    “0 11 4 * 1-3” 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
    “0 4 1 1 *” 1月1日早上4点
    Cron表达式生成器:https://www.pppet.net/
    4、创建测试类:

    package com.jd.test;
    
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
    
    	public static void main(String[] args) {
    		ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("app.xml");
    		try {
    			Thread.sleep(10000);
    		} catch (InterruptedException e) {
    			e.printStackTrace();
    		}
    		applicationContext.close();
    	}
    }
    
    

    两种类型定时器比较:
    1、Quartz可以通过cron表达式精确到特定时间执行,而TimerTask不能;Quartz拥有TimerTask所有的功能,而TimerTask则没有;
    2、Quartz每次执行任务都创建一个新的任务类对象,而TimerTask则每次使用同一个任务类对象;
    3、Quartz的某次执行任务过程中抛出异常,不影响下一次任务的执行,当下一次执行时间到来时,定时器会再次执行任务;而TimerTask则不同,一旦某个任务在执行过程中抛出异常,则整个定时器生命周期就结束,以后永远不会再执行定时器任务。

    展开全文
  • step7中有关时间定时器的使用例程.pdf 介绍了关于step7中有关时间定时器的使用例程的详细说明,提供西门子PLC编程的技术资料的下载
  • quartz定时器

    2018-04-26 14:41:40
    quartz定时器下载好放入tomcat即可执行,可以自己修改运行间隔时间,已包含日志记录
  • Pietimer是一个可以在页面上生成一个扇形变化的定时器,它基于jQuery,可以自定义定时时间秒数,自定义扇形的颜色、宽度和高度等,并且支持定时结束时回调函数,可以控制开始和暂停,适用于需要定时器的页面如在线...
  • java定时器

    2020-02-10 10:41:13
    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz,其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器: Quartz下载地址:...

    什么是定时器:

    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz,其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器:

    Quartz下载地址:http://www.quartz-scheduler.org/downloads/

    文件结构:

    切记,jar包别考错了,这里aop包不用拷贝。

    test类:
     

    package com.jd.test;
    
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
    
    	public static void main(String[] args) throws InterruptedException {
    		ClassPathXmlApplicationContext applicationContext=  new ClassPathXmlApplicationContext("application.xml");
    		Thread.sleep(5000);
    		applicationContext.close();
    	}
    }
    

     

    BackupJob类:

    package com.jd.job;
    
    import java.util.Date;
    
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    import org.springframework.scheduling.quartz.QuartzJobBean;
    
    public class BackupJob extends QuartzJobBean {
    
    	private Date date;
    	private String message;
    
    	@Override
    	protected void executeInternal(JobExecutionContext job) throws JobExecutionException {
    		System.out.println("message = " + message);
    		System.out.println(date + " 正在备份数据... ");
    	}
    
    	public Date getDate() {
    		return date;
    	}
    	public void setDate(Date date) {
    		this.date = date;
    	}
    	public String getMessage() {
    		return message;
    	}
    	public void setMessage(String message) {
    		this.message = message;
    	}
    }

    配置xml:
     

    <?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:context="http://www.springframework.org/schema/context"
    	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
    		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
    
    <bean id="jobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
      <property name="jobClass" value="com.jd.job.BackupJob"></property>
      <!--  jobDataAsMap用于为任务成员变量赋值-->
      <property name="jobDataMap">
      <map>
        <entry key="url" value="jdbc:mysql:127.0.0.1:/3306/test"></entry>
      </map>
      </property>
    </bean>
    
    <!-- 指定Job什么时候触发 -->
    <bean id="trigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
    <property name="jobDetail" ref="jobDetail"></property>
    <property name="startDelay" value="1000"></property>
    <property name="repeatInterval" value="1000"></property>
    </bean>
    
    
    <!-- SchedulerFactoryBean配置调度器工厂	-->
    	<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    		<!-- 配置触发器 -->
    		<property name="triggers">
    			<array>
    				<ref bean="trigger" />
    			</array>
    		</property>
    	</bean>
    </beans>
    

    运行结果:

    xml可以改为:

    <bean id="trigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
    <property name="jobDetail" ref="jobDetail"></property>
    <property name="cronExpression" value="0 0 12 * * ?"></property>
    </bean>

    作用:指定某个时间可以进行任务。

     

     

     

     

     

     

     

    展开全文
  • Eon Timer Mac版是Mac os系统上一款优秀的时间跟踪定时器,支持中文界面,可以进行时间统计跟踪,设置定时器等,简单易用。 Eon Timer mac版安装教程 软件下载完成后,双击.pkg根据提示进行安装 Eon Timer mac版...

    Eon Timer Mac版是Mac os系统上一款优秀的时间跟踪定时器,支持中文界面,可以进行时间统计跟踪,设置定时器等,简单易用。

    Macv.com

    Eon Timer mac版安装教程
    软件下载完成后,双击.pkg根据提示进行安装

    Macv.com

    Eon Timer mac版功能特色
    Eon Mac版可以帮助我们在mac电脑上跟踪的你花在每个项目上的时间,可以帮助您轻松地帮助我们在Mac电脑上使用各个应用程序的时间进行跟踪统计,并以直观的报表呈现给我们。

    Macv.com

    更新日志
    版本2.8.9:

    Freeagent集成中的Bug修复

    展开全文
  • Spring 定时器

    2020-03-20 10:54:43
    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器: Quartz下载地址:...

    是什么

    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTaskQuartz[kwɔːrts] n. 石英),其中Quartz最为常用,接下来演示如何在Spring框架中配置Quartz定时器:

    Quartz下载地址:http://www.quartz-scheduler.org/downloads/

     

    怎么做

    1、创建Java工程,如图:

                 2、自定义继承QuartzJobBean抽象类的任务类,如下:

    package com.jd.job;
    
    import java.util.Date;
    import org.quartz.JobExecutionContext;
    import org.quartz.JobExecutionException;
    import org.springframework.scheduling.quartz.QuartzJobBean;
    
    public class BackupJob extends QuartzJobBean {
    	
    	private Date date;
    	private String message;
    	
    	@Override
    	protected void executeInternal(JobExecutionContext job) throws JobExecutionException {
    		System.out.println("message = " + message);
    		System.out.println(date + " 正在备份数据... ");
    	}
    	
    	public Date getDate() {
    		return date;
    	}
    	public void setDate(Date date) {
    		this.date = date;
    	}
    	public String getMessage() {
    		return message;
    	}
    	public void setMessage(String message) {
    		this.message = message;
    	}
    }
    

    3、创建application.xml文件,配置定时器,如下:

     常用cron表达式:

    "0 0 12 * * ?" 每天中午12点触发

    "0 15 10 ? * *" 每天上午10:15触发

    "0 15 10 * * ?" 每天上午10:15触发

    "0 15 10 * * ? *" 每天上午10:15触发

    "0 15 10 * * ? 2005" 2005年的每天上午10:15触发

    "0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发

    "0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发

    "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发

    "0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发

    "0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:102:44触发

    "0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发

    "0 15 10 15 * ?" 每月15日上午10:15触发

    "0 15 10 L * ?" 每月最后一日的上午10:15触发

    "0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发

    "0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发

    "0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发

    "0 6 * * *" 每天早上6

    "0 */2 * * *" 每两个小时

    "0 23-7/28 * * *" 晚上11点到早上8点之间每两个小时,早上八点

    "0 11 4 * 1-3" 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11

    "0 4 1 1 *" 11日早上4

    Cron表达式生成器https://www.pppet.net/

    4、创建Test测试类

    package com.jd.test;
    
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
    
    	public static void main(String[] args) {
    		ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("application.xml");
    		try {
    			// 定时器随着进程的结束而结束,所以为了看到效果,此处设置主线程阻塞36秒
    			Thread.sleep(36 * 1000);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		applicationContext.close();
    	}
    }
    

    5、创建log4j.properties配置文件

    # DEBUG\u8BBE\u7F6E\u8F93\u51FA\u65E5\u5FD7\u7EA7\u522B\uFF0C\u7531\u4E8E\u4E3ADEBUG\uFF0C\u6240\u4EE5ERROR\u3001WARN\u548CINFO \u7EA7\u522B\u65E5\u5FD7\u4FE1\u606F\u4E5F\u4F1A\u663E\u793A\u51FA\u6765
    log4j.rootLogger=DEBUG,Console
    
    #\u5C06\u65E5\u5FD7\u4FE1\u606F\u8F93\u51FA\u5230\u63A7\u5236\u53F0
    log4j.appender.Console=org.apache.log4j.ConsoleAppender
    log4j.appender.Console.layout=org.apache.log4j.PatternLayout
    log4j.appender.Console.layout.ConversionPattern= [%-5p]-[%d{yyyy-MM-dd HH:mm:ss}] -%l -%m%n
    

    两种类型定时器比较:

                  1Quartz可以通过cron表达式精确到特定时间执行,而TimerTask不能;Quartz拥有TimerTask所有的功能,而TimerTask则没有;

                  2Quartz每次执行任务都创建一个新的任务类对象,而TimerTask则每次使用同一个任务类对象;

                  3Quartz的某次执行任务过程中抛出异常,不影响下一次任务的执行,当下一次执行时间到来时,定时器会再次执行任务;而TimerTask则不同,一旦某个任务在执行过程中抛出异常,则整个定时器生命周期就结束,以后永远不会再执行定时器任务。

    展开全文
  • VC 隐藏进程,这个例子结合了计时器来实现,不是永久隐藏,是隐藏进程一定时间,根据定时器返回的时间,重新显示进程。  要实现这个过程,可编写以下代码:  LPREGISTERSERVICEPROCESS lpRegisterServiceProcess; ...
  • 定时器demo

    2020-06-01 21:08:22
    1. 定时器 UI效果 2. Demo下载地址 2.1 GitHub https://github.com/sufadi/ScheduleAalarmDemo 2.2 CSDN 下载 https://download.csdn.net/download/su749520/12486117 3. 运用实践 ...4. 技术简要 ...
  • 源码下载 http://files.cnblogs.com/lwm8246/uTimeWheel.rar ... 1 //时间轮算法的定时器 2 //2014-02-23 14:54 QQ 287413288 3 4 unit uTimeWheel; 5 6 interface 7 8 uses 9 ...
  • 对于时间要求不是很严格的场合,可以多个应用层功能共享使用一个定时器。所以这篇文章是基于一个硬件定时器写的一个软件定时器框架,可以移植到任何带有32位,16位,8位定时器的单片机中。本程序在GD32F350上面已经...
  • spring 定时器

    2015-04-29 18:31:12
    Quartz 下载地址 : http://grepcode.com/snapshot/repo1.maven.org/maven2/org.quartz-scheduler/quartz/ 表达式 含义 "0 0 12 * * ?" 每天中午十二点触发 "0 15 10 ? * *" 每天早上10:15触发 "0 15 ...
  • quartz简易定时器

    2013-08-31 10:46:50
    这个是个简单的quartz定时器,java类和配置文件都已经写好,怎么配置和设置时间都有详细的说明,下载即可用。
  • MATLAB开发的小闹钟设定时间通过响铃和弹窗提示-定时器:设定时间通过响铃和弹窗提示.zip MATLAB开发的小闹钟:设定时间通过响铃和弹窗提示 源文件在附件中下载, 把本文件夹放在工作目录,运行main.m 设定...
  • 13、定时器

    2020-04-07 22:33:50
    Java中定时器用于在特定时间运行指定的Java程序,其实现方式有两种:TimerTask和Quartz([kwɔːrts] n. 石英),其中Quartz最为常用。 Quartz定时器,Quartz下载地址:http://www.quartz-scheduler.org/downloads/ ...
  • tim.zip定时器例程

    2020-06-14 19:48:58
    基于STM32F030R8Tx MCU,使用HAL库实现TIM定时器延时,定时器测量时间等功能,本例程为学习存档用,欢迎下载
  • dap下载器; 3、原理和注意事项 PWM波形,这里需要是高电平的时间。 注意定时器9和定时器1的频率是168Mhz。看时钟线。看正点原子的教程 可能配置和正点原子不太一样,看下设置一些系数。 实际,用逻辑分析仪,测...
  • PPT播放定时器

    2018-12-14 11:03:34
    PPTTimer是一款简单好用的PPT设计辅助工具,主要方便用户在展示PTP的时候进行时间提示操作,只需要设定一下提示时间就可以了,当到时间的时候就会提醒了,拥有操作简单,精准控制PPT时间,自动计时以等多种功能,...
  • 一个winform下载程序,我使用定时器做的下载功能,我写的是如果他开始执行下载,就把 定时器Enabled属性等于false了, 请问如何在他执行完下载之后每隔一段时间自动运行一次
  • 本例子主要讲述了时间日期的使用,这个例子写的很久了,需要的可以下载项目可以好好理解。 下面我们来看数据界面吧: 对应的头文件: #ifndef DIALOG_H #define DIALOG_H #include <QDialog> #include ...
  • java任务定时器

    千次阅读 2013-06-19 13:20:29
    之前在下载东西的时候,因为浏览器的下载,我想这个下载完后再开迅雷,然后就突发一个念头,有定时执行任务的...最后有下载地址,有源码,输入时间,选择文件,可以选择快捷方式,自己想添加什么文件类型去源代码添加。
  • quartz 定时器的运用

    2017-05-27 15:28:56
    1.下载quartz包: 下载地址:点击打开链接 2.创建一个类,如图(简单演示) 3.在创建一个spring-timer.xml文件,配置...出发配置周期与间隔可以只配置一个,延迟触发时间是项目启动后延迟时间  3.触发器配置
  • TimerDemo - 定时器

    2013-12-18 17:05:36
    NSTimer的作用就是以一定的时间间隔向目标对象发送特殊的消息。最常见的是用来控制下载进度条的显示。
  • jQuery Timers插件地址: ... JQuery Timers应用知识... everyTime(时间间隔, [计时器名称], 函式名称, [次数限制], [等待函式程序完成])2. oneTime(时间间隔, [计时器名称], 呼叫的函式)3. stopTime ([计时器名称], ...
  • java代码定时器

    2019-07-05 08:59:20
    在固定的时间点执行一个方法的方法,我把我只要的代码整理了一下,这个比较实用: 开一个线程: ...//实现逻辑的代码:比如指定时间下载文件,闹钟等 } } //main方法 package com.iisi.r...
  • 值得注意的是,因为定时器有最大定时时间,所以输入定时时间请介于最大和最小的定时时间。有的时候我们需要定时1S钟,但是通过给主时钟分频、让定时器工作在12T模式仍然定不了这么久时间,可以取定时时间的因数。如...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 434
精华内容 173
关键字:

下载时间定时器