永发信息网

java quartz 如何配置, 两天执行一次,且0点执行?

答案:2  悬赏:30  手机版
解决时间 2021-01-16 09:45
  • 提问者网友:沦陷
  • 2021-01-16 06:30
java quartz 如何配置, 两天执行一次,且0点执行?
最佳答案
  • 五星知识达人网友:野味小生
  • 2021-01-16 06:55
如果你是直接写的代码设置时间的,可以设置每48小时,翻翻API就有了,既然你问了,肯定是通过XML配置文件写的,那只能给一个解决方案了,在配置文件中虽然有0 0 0 1/2 * ? 来表示从每月1号起每2天0点0分0秒执行一次,但遇到31这样的月份就会错,不建议使用。

想到的解决方案有2种,一种设置成每天跑一次,定义个static boolean变量 第一次执行的时候改成false并执行,第2天的执行获取该值,发现是false把值变成true不执行,发现是true改成false执行。
第2种方法其实是为了防止项目被重启static变量重置的,这个boolean值(或者你自定义的标示符)放到数据库里,没天执行的时候读一下库。当然在指定位置生成一个空文件,每次执行判断该位置的文件是否存在也一样(覆盖项目的时候记得,如果这个文件有复制到相关位置就好了)
全部回答
  • 1楼网友:蕴藏春秋
  • 2021-01-16 08:08

网页链接
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯