<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 60,comments - 71,trackbacks - 0

    一個WEB應用程序下的定時任務,覺得寫的比較全,所以轉了一下.
        一個實現ServletContextListener接口的類: StatisticsContextListener.java
    package com.ed.cnc.servletListener;

    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;

    import com.ed.cnc.city.StatisticsTask;

    /**
     * 統計ContextListener
     * 
    @author westd
     *
     
    */

    /**
     * 
    @author westd
     *
     
    */

    public class StatisticsContextListener implements ServletContextListener
    {

        
    private java.util.Timer timer = null;
        
        
        
    /**
         * 這個方法在Web應用服務做好接受請求的時候被調用。
         * 
         * 
    @see javax.servlet.ServletContextListener#contextInitialized(javax.servlet.ServletContextEvent)
         
    */

        
    public void contextInitialized(ServletContextEvent event) 
        
    {
            timer 
    = new java.util.Timer(true);
            event.getServletContext().log(
    "定時器已啟動"); 
            timer.schedule(
    new StatisticsTask(event.getServletContext()), 060*60*1000);//每隔1小時
            event.getServletContext().log("已經添加任務調度表");
        }

        
        
        
    /**
         * 這個方法在Web應用服務被移除,沒有能力再接受請求的時候被調用。
         * 
         * 
    @see javax.servlet.ServletContextListener#contextDestroyed(javax.servlet.ServletContextEvent)
         
    */

        
    public void contextDestroyed(ServletContextEvent event)
        
    {
            timer.cancel();
            event.getServletContext().log(
    "定時器銷毀");
        }


    }


    一個繼承于TimerTask的一個類:StatisticsTask.java
    package com.ed.cnc.city;

    import java.util.Calendar;
    import java.util.TimerTask;

    import javax.servlet.ServletContext;


    /**
     * 統計任務
     * 
    @author westd
     *
     
    */

    public class StatisticsTask extends TimerTask
    {

        
    private static final int STATISTICS_SCHEDULE_HOUR = 0;
        
    private static boolean isRunning = false;
        
    private ServletContext context = null;

        
    public StatisticsTask(ServletContext context)
        
    {
            
    this.context = context;
        }

        
        @Override
        
    public void run()
        
    {
            Calendar cal 
    = Calendar.getInstance(); 
            
    //System.out.println(isRunning);
            if (!isRunning) 
            

                
    if (STATISTICS_SCHEDULE_HOUR == cal.get(Calendar.HOUR_OF_DAY)) //查看是否為凌晨
                
                    isRunning 
    = true
                    context.log(
    "開始執行指定任務");
                    
                    
    //TODO 添加自定義的詳細任務
                    executeTask();
                    
                    
    //指定任務執行結束
                    isRunning = false;
                    context.log(
    "指定任務執行結束"); 
                }
     
            }
     
            
    else 
            
    {
                context.log(
    "上一次任務執行還未結束");
            }

        
        }


        
    /**
         * 執行任務
         
    */

        
    public void executeTask()
        
    {
            System.out.println(
    "任務1");
            System.out.println(
    "任務2");
        }

    }


    web.xml中添加如下代碼:
    <listener>
            
    <listener-class>com.ed.cnc.servletListener.StatisticsContextListener</listener-class>
    </listener>
    posted on 2008-07-25 15:48 henry1451 閱讀(439) 評論(1)  編輯  收藏

    FeedBack:
    # re: 利用ServletContextListener實現定時任務(l轉)
    2009-01-07 15:06 | 汽車工業濾紙
    uijhy  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 国产亚洲精品免费| 国产亚洲av人片在线观看| 成人毛片免费视频| 亚洲自偷精品视频自拍| xxxxx做受大片在线观看免费| 成全视频在线观看免费| 成人免费在线观看网站| 中文字幕 亚洲 有码 在线| 最近中文字幕无吗高清免费视频| 国产色在线|亚洲| 青草草在线视频永久免费| 国产亚洲成人在线播放va| 亚洲视频一区在线| 永久免费的网站在线观看| 亚洲精品国产品国语在线| 亚洲av无码日韩av无码网站冲| 成年大片免费视频| 国产成人综合久久精品亚洲| 久久国产色AV免费观看| 亚洲经典在线中文字幕| 德国女人一级毛片免费| 亚洲国产精久久久久久久| 一区二区三区免费在线视频| 67194成是人免费无码| 亚洲精品成a人在线观看夫| 99国产精品视频免费观看| 国产AV无码专区亚洲AV手机麻豆| 中文永久免费观看网站| 亚洲国产成人精品女人久久久 | 亚洲视屏在线观看| 成年性午夜免费视频网站不卡| 亚洲欧美成人一区二区三区| 免费无遮挡无码永久视频| 国产精品亚洲片在线va| 亚洲成av人片在线观看天堂无码 | 亚洲国产精品成人午夜在线观看| 少妇亚洲免费精品| 免费国产污网站在线观看15| 亚洲人AV在线无码影院观看| 日本亚洲国产一区二区三区| 18国产精品白浆在线观看免费|