<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 閱讀(431) 評論(1)  編輯  收藏

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

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


    網站導航:
     
    主站蜘蛛池模板: 久久精品国产亚洲| 国产AV无码专区亚洲AV漫画| 亚洲国语精品自产拍在线观看| 菠萝菠萝蜜在线免费视频| 免费v片在线观看品善网| 色欲aⅴ亚洲情无码AV| 免费看大黄高清网站视频在线| 四虎必出精品亚洲高清| 搡女人真爽免费视频大全| 亚洲va久久久久| 欧洲精品免费一区二区三区| 亚洲GV天堂无码男同在线观看 | 亚洲综合激情五月丁香六月 | 歪歪漫画在线观看官网免费阅读 | 亚洲AV无码国产一区二区三区| 国产精品无码素人福利免费| 美女露100%胸无遮挡免费观看| 亚洲国产成人乱码精品女人久久久不卡| 免费人成大片在线观看播放电影| 亚洲?v女人的天堂在线观看| 精品多毛少妇人妻AV免费久久| 亚洲国产日韩在线视频| 香蕉成人免费看片视频app下载| 亚洲日韩在线视频| 国产一区二区三区免费视频| 久久免费国产精品| 亚洲欧洲国产成人精品| 俄罗斯极品美女毛片免费播放| 97在线免费视频| 亚洲国产精品无码久久久| 国产午夜免费秋霞影院| 国产一级在线免费观看| 337p日本欧洲亚洲大胆艺术| 女人毛片a级大学毛片免费| 四虎国产精品成人免费久久| 亚洲av无码成h人动漫无遮挡 | 成人爱做日本视频免费| 成全动漫视频在线观看免费高清版下载| 亚洲视频手机在线| 免费国产一级特黄久久| 91香蕉国产线在线观看免费|