1 import java.util.Calendar;  
 2 import java.util.Date;  
 3 import java.util.Timer;  
 4 import java.util.TimerTask;  
 5   
 6 public class Test {  
 7     public static void main(String[] args) {  
 8         //timer1();  
 9         timer2();  
         //timer3();  
         //timer4();  
     }  
   
     // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)  
     public static void timer1() {  
         Timer timer = new Timer();  
         timer.schedule(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 2000);// 设定指定的时间time,此处为2000毫秒  
     }  
   
     // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行  
     // schedule(TimerTask task, long delay, long period)  
     public static void timer2() {  
         Timer timer = new Timer();  
         timer.schedule(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 1000, 1000);  
     }  
   
     // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。  
     // scheduleAtFixedRate(TimerTask task, long delay, long period)  
     public static void timer3() {  
         Timer timer = new Timer();  
         timer.scheduleAtFixedRate(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 1000, 2000);  
     }  
      
     // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.  
     // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)  
     public static void timer4() {  
         Calendar calendar = Calendar.getInstance();  
         calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时  
         calendar.set(Calendar.MINUTE, 0);       // 控制分  
         calendar.set(Calendar.SECOND, 0);       // 控制秒  
   
         Date time = calendar.getTime();         // 得出执行任务的时间,此处为今天的12:00:00  
   
         Timer timer = new Timer();  
         timer.scheduleAtFixedRate(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行  
     }  
 }  

java定时器的几种用法[转]的更多相关文章

  1. (转) java定时器的几种用法

    package com.lid; import java.util.Calendar; import java.util.Date; import java.util.Timer; import ja ...

  2. java定时器的几种用法

    package com.lid; import java.util.Calendar; import java.util.Date; import java.util.Timer; import ja ...

  3. 【转】Java 枚举7常见种用法

    原文网址:http://softbeta.iteye.com/blog/1185573 Java 枚举7常见种用法 博客分类: java java枚举enmu  原创地址:http://blog.li ...

  4. Java 枚举7常见种用法

    DK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是:  ...

  5. Java枚举常见7种用法

    DK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便.用法一:常量在JDK1.5 之前,我们定义常量都是: publicstaticfianl…… .现 ...

  6. Java枚举7常见种用法

    DK1.5引入了新的类型——枚举.在Java中它虽然算个“小”功能,却给我的开发带来了“大”方便. 方法/步骤 用法一:常量 在JDK1.5之前,我们定义常量都是:publicstaticfianl. ...

  7. Java 枚举7常见种用法(转)

    JDK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl ...

  8. Java定时器的三种实现方式

    一.普通thread /** * 普通thread * 这是最常见的,创建一个thread,然后让它在while循环里一直运行着, * 通过sleep方法来达到定时任务的效果.这样可以快速简单的实现, ...

  9. Java 枚举常见7种用法

    用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl.....现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. publ ...

随机推荐

  1. 9月22日上午JavaScript----window对象

    window对象 window属性: opener:打开当前窗口的源窗口,如果这个窗口是由别的网页点击链接跳转过来的,或者是从另外一个页面点击打开窗口打开的,opener就是找到源页面的.如果当前窗口 ...

  2. ecshop后台模板设置中将非可编辑区改为可编辑区

    原代码 <file name="category.dwt"> <region name="左边区域"> <lib>cart& ...

  3. Linux--文件查找命令

    一.简介查找文件的几个命令: 1.which :查找可执行文件的位置 2.whereis:查找文件的位置,可以找到可执行命令和man page 3.locate:配合数据库查看文件位置 4.find: ...

  4. RHEL本地yum源

    一.挂载本地镜像做yum源(环境:RHEL6.5 64位 VM11) 1.进入/etc/yum.repos.d目录, [root@localhost yum.repos.d]# ls packagek ...

  5. git 简明使用手册

    git 使用简明手册     git 是由Linus Torvalds领衔开发的一款开源.分布式版本管理系统,显然,git最初是为了帮助管理Linux内核开发而开发的版本控制系统. 版本控制系统本身并 ...

  6. 缓存 HttpContext.Current.Cache和HttpRuntime.Cache的区别

    先看MSDN上的解释: HttpContext.Current.Cache:为当前 HTTP 请求获取Cache对象. HttpRuntime.Cache:获取当前应用程序的Cache.  我们再用. ...

  7. 使用Robomongo 连接MongoDB 3.x 报 Authorization failed 解决办法(转)

    最近安装了mongodb3.1.4,并启用了权限验证,在dos窗口下操作没有任何问题,为了维护方便就下载了一个客户端工具Robomongo 0.8.5,用户名.密码的等配置好点解测试,结果连接服务没有 ...

  8. spring InitializingBean接口

    最近工作需要得到sping中的每个事物需要执行的sql,称机会简单研究了一下spring的事务,项目中管理事务比较简单,用TransactionTemplate,就直接以TransactionTemp ...

  9. linuxMint下安装ftp工具--filezilla

    windows下ftp工具有好多,linux下推荐用filezilla 安装filezilla很简单,安装完后,使用方式和windows下面一样. 第一种方式: 直接去filezilla官网下载软件包 ...

  10. SAS学习笔记<一>

    三个周末的SAS课程宣告结束, 总结下来 第一周的统计原理简介 第二周/第三周讲解SAS的基本操作. 总体下来,对自己的知识结构有了一个新的梳理,对比大学时期,某个老师一上来就教我们SAS编程,而未考 ...