Timer和TimerTask类在java中实现定时任务

5 篇文章 0 订阅

public class PushMsgAPP extends TimerTask{


    @Override
    public void run() {
        // TODO Auto-generated method stub
        System.out.println("---开始推送通知到APP---");
        ResupplyPayAccountBusi busi=new ResupplyPayAccountBusi();
        busi.APP_pushMsg();
    }
    
    
}

监听:

public class statisticsContextLisner implements ServletContextListener{

    //日志记录
    Logger log = Logger.getLogger(this.getClass().getName());
    
    private java.util.Timer timer = null;
    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
        if(timer!=null){
            timer.cancel();//关闭定时器
            log.debug("-----定时器销毁--------");
        }
    }

    @Override
    public void contextInitialized(ServletContextEvent arg0) {
        //创建一个定时器,用于安排需要定时执行的任务。
        timer = new Timer();
        //为定时器安排需要定时执行的任务,该任务就是前面创建的任务类TaskAvailableConnectNumber,并指定该任务每30分钟执行一次。
        //设定每天推送的时间
        Calendar cal=Calendar.getInstance();
        cal.set(Calendar.HOUR_OF_DAY,18);
        cal.set(Calendar.MINUTE, 24);
        cal.set(Calendar.SECOND, 0);
        Date time=cal.getTime();
        timer.scheduleAtFixedRate(new PushMsgAPP(),time,1000*3600*24);
        log.debug("启动定时器");
    }

}
web.xml配置监听

<!-- 配置监听-->
    <listener>
        <listener-class>com.hysoft.wygl.common.statisticsContextLisner</listener-class>
    </listener>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值