简单介绍SpringTimer

Spring Timer类和OpenSymphony的Quartz调度器是两个流行的调度API。Spring为这两个调度器提供了一个抽象层,使你可以更容易地使用它们。

简单总结下Spring Timer调度任务的使用(以备参考):

创建一个Spring Timer任务MySchedule.java

  1. public class MySchedule extends TimerTask {  
  2.   private ShopDao shopDao;  
  3.   public void run() {  
  4.      System.out.println("------定时器开始------");  
  5.      try {  
  6.         initShopInfo();  
  7.      }  catch(Exception e)  {  
  8.         System.out  
  9.             .println("------定时器发生异常------");  
  10.      }  
  11.      System.out.println("------定时器结束------");  
  12.      try {  
  13.          if (MyParameter.SHOP !=null)  
  14.            MyParameter.SHOP.clear();  
  15.          List shoptemp = shopDap.findShop();  
  16.          for (Shop shop : shoptemp) {  
  17.            MyParameter.SHOP.put(shop.getShopid(), shop);  
  18.          }  
  19.        } catch (Exception e) {  
  20.          System.out  
  21.              .println("------加载商家信息发生异常------");  
  22.           e.printStackTrace();  
  23.        }  
  24.        System.out.println("-------加载商家信息结束------");  
  25.       }  
  26.      public void setShopDao(ShopDao shopDao) {  
  27.        this.shopDao = shopDao;  
  28.      }  
  29. }

上面的run()方法定义了当任务运行时该做什么。在上面的例子中,它调用shopDao的findShop()方法来初始化一个Map对象。ShopDao是通过依赖注入方式提供给MySchedule的。

以下是MyParameter.java

  1. public class MyParameter {  
  2.    //商家ID---商家类  
  3.    public static Map, Shop> SHOP = new HashMap, Shop>();  
  4.    public static String getShopname(Long shopid) {  
  5.      Shop shop =null;  
  6.      String name = "";  
  7.      if (SHOP !=null && SHOP.size() > 0) {  
  8.        shopshop = shop.get(shopid);  
  9.        if (shop !=null)  
  10.          name =shop.getShortname();  
  11.      }  
  12.      return name;  
  13.    }  
  14. }

上面的Map对象里保存着shopid与Shop对象的对应关系。

这里打算在Spring Timer启动时建立好商家ID与商家对象的对应关系,以便在项目里随时根据特定的商家ID输出此商家任何相关的数据。

分享题目:简单介绍SpringTimer
标题路径:http://www.shufengxianlan.com/qtweb/news36/354986.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联