去哪网实习总结:开发定时任务(JavaWeb)

本来是以做数据挖掘的目的进去哪网的,结构却成了系统开发。。。

不过还是比较认真的做了三个月,老师很认同我的工作态度和成果。。。

实习马上就要结束了,总结一下几点之前没有注意过的变成习惯和问题,分享给大家。


同时打个广告:去哪网内审部招JavaWeb开发实习生,时间非常自由,每周一天、周六周日甚至都可以,时间充裕的小伙伴给我留言啊,挣个零花钱,还能长点经验。。。。(保研的、想工作的大四狗最合适不过了。。。)




其实定时任务很简单,js其实也做过,就是Timer类的 Timer.schedule(TimerTask task, Date time, long period)方法而已,三个参数分别是:任务、延迟、间隔。

给个完整的代码:

首先是BugXmlTimer类:

public class BugXmlTimer  {
	public Timer timer;

	public void timerStart(){
		timer = new Timer();
		Date datetime=new Date();
		Date midnightDate=new Date();
		SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	    try {
	    	midnightDate = sdf2.parse(sdf1.format(datetime)+" 10:06:00");
	    } catch (ParseException e) {
	        // TODO Auto-generated catch block
	        e.printStackTrace();
	    }
	    System.out.println("before task");
	    long time = midnightDate.getTime()-datetime.getTime();
	    //立刻执行,然后每隔10s执行一次
	    timer.schedule(new BugXmlTimerTask(), 0, 10000);//time
	}
   
	public void timerStop(){
		if(timer!=null) 
			timer.cancel();
	}
   
	public static void main(String[] args){
		BugXmlTimer myTimer=new BugXmlTimer();
        // TODO Auto-generated method stub
        myTimer.timerStart();
   }
}


其次是TimerTask类:
<pre name="code" class="java">public class BugXmlTimerTask extends TimerTask {
    @Override
    public void run() {
    	System.out.print("run task");
    	try {
			<strong>sendMail();//下一篇博客教你发送邮件</strong>
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
 

最后添加Listener类:

public class MyTimerListener implements ServletContextListener {
	
<span style="white-space:pre">	</span>private BugXmlTimer  mytimer = new BugXmlTimer  ();
    public void contextInitialized(ServletContextEvent event) {
        mytimer.timerStart();
    }
    public void contextDestroyed(ServletContextEvent event) {
        mytimer.timerStop();
    }
    
}


最后不要忘了配置web.xml的listener节点:

<listener>
    <listener-class>com.TimeListener.MyTimerListener</listener-class>
</listener>





  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值