网上有用timer,timertask,可我只想每天只执行一遍,就是说:每天都执行但只执行一次,但在timwer指定任务后无法控制执行的次数啊,有没好的逻辑一些方法?
[b]问题补充:[/b]
先谢谢。
我要定时生成一个邮件信息保存到表里边(orcal间隔的检查表中是否有邮件,有则发送),这邮件的类型有周报,月报,年报等。
后台间隔执行任务。这个任务的目的就是生成邮件信息,现在有calendar.get(calendat.DAY_OF_WEEK)=2判断这天是否为周一(其他类似).
现在问题来了,如果是周报我必须保证在周1上班前把邮件生成好并放到表里边,而且要使得不能重复生成这周的邮件,如果没正常生成邮件出现异常或者重启服务器了,要记录该邮件信息,待启动服务器后再生成之前未成功生成的邮件。
timer设置的没间隔半小时执行一遍,这就很有可能在周一这天重复生成相同的邮件,我要他在周1上班前只生成一次邮件,第一次不成功的试生成5次,5次都不成功的就罢了。
执行任务时又怎么区别是已到了下周1还是这周一已生成过邮件了 这两种情况?
好费劲啊!大哥们